Java - Dos clases un metodo

 
Vista:
sin imagen de perfil
Val: 10
Ha disminuido su posición en 3 puestos en Java (en relación al último mes)
Gráfica de Java

Dos clases un metodo

Publicado por Adrián (5 intervenciones) el 18/11/2019 02:21:45
Buenas tardes, desarrolle un programa o app, (no se como referirme a el) en java, como e podido y con mucha paciencia logre una primera fase, pero ahora que intento mejorar mis errores y aprender mas estoy en un dilema, utilizó lo ya aprendido o intento nuevas cosas.

La cuestión es la siguiente:
Tengo un método que valida los campos de un formulario, ya que los valido, usa esos datos para hacer ciertas cosas, quiera saber si es posible utilizar este mimo método en otro frame(otra clase).

Abrevio lo que tengo:
1
2
3
4
5
6
7
8
9
10
public class frame1{
.......
jtextfield campo = new jtextfield();
 campo.setText();
}
public class frame2{
.......
jtextfield campo = new jtextfield();
 campo.setText();
}
La siguiente parte es la que no sé si se puede o no hacer en java para no duplicar el método:

1
2
3
4
5
6
7
8
9
10
11
public class validar{
boolean queFrameUsar;
public void validarCampo(){
if(queFrameUsar == true){
usarFrame = frame1.campo.getText();
}else{
usarFrame = frame2.campo.getText();
}
public void crea(){
usarframe ... y continua el código.
}
Sé que puedo utilizar lo que hace el metodo "crea" si lo repito dentro de el if y de el else, sé que puedo hacer dos clases de "crea" (con diferente nombre) para cada uno de los "usarFrame", mi intención es aprender a reutilizar el código que ya tengo sin que tenga que estar copiando ya sea el código o la clase completa y modificarlo para cada frame.

Espero me puedan ayudar y decirme si se puede hacer o no y de antemano muchas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Lawliet
Val: 653
Bronce
Ha disminuido 1 puesto en Java (en relación al último mes)
Gráfica de Java

Dos clases un metodo

Publicado por Lawliet (303 intervenciones) el 18/11/2019 02:43:15
Hola!!!

Eso depende de que tan reutilizable son las entidades; es decir, cuando tu validas un formulario por ejemplo de usuarios, sabes que tiene un nombre, un apellido, un correo, una fecha de nacimiento, etc, por lo cual puedes validarlo sin problemas, sin embargo, si tenemos un formulario de empleado, igual sabemos que tiene un nombre, apellido, correo, fecha de nacmiento, etc... Si te das cuenta es la misma información pero con clase diferente... Lo que conocemos como herencia en POO, no obstante, obviamente no puedes usar el mismo código para validar un empleado con un producto ya que hablamos de objetos completamente diferentes.

Sin más que comentar, quedo al pendiente de cualquier duda y/o comentario.

Saludos!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 10
Ha disminuido su posición en 3 puestos en Java (en relación al último mes)
Gráfica de Java

Dos clases un metodo

Publicado por Adrián (5 intervenciones) el 13/12/2019 02:12:26
Gracias por la explicación. Se me hizo clara y concisa. Todo depende de que va a valorar y en que forma lo usara. Gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 203
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Dos clases un metodo

Publicado por Juan (66 intervenciones) el 18/11/2019 12:48:23
Depende de tu proyecto y como lo tengas distribuido puedes usar una clase con métodos estáticos que validen los campos.
por ejemplo la clase "Validar" con un método estático "public static void validarCampo (String datos){...}" de manera que luego llamas a este método sin necesidad de instanciar 2 veces la clase Validar, porque cuando son métodos estáticos no creas objetos de esa clase, simplemente pones el nombre de la clase y el método y te ejecuta el código sin crear un objeto, quedando de la siguiente forma:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
class Jframe1{
     ...
     Validar.validarCampo(CampoJFrame1);
     ...
}
 
class Jframe2{
     ...
     Validar.validarCampo(CampoJFrame2);
     ...
}
 
 
class Validar{
 
     public static void validarCampo (String datos){
          ...
     }
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 10
Ha disminuido su posición en 3 puestos en Java (en relación al último mes)
Gráfica de Java

Dos clases un metodo

Publicado por Adrián (5 intervenciones) el 13/12/2019 02:17:22
Me gusto y aplique tu solución, como voy empezando, por decirlo de alguna forma, no lo había visto de esta forma. Me ayudo y lo implante así: si valido un campo de diferentes frames que sean iguales(nombres por ejemplo o numero de empleado), los valido con un de una forma estática sin crear un objeto. Excelente sugerencia y ayuda. Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar