Tal y como
dejamos el post anterior con dos errores en el archivo Uso_vehiculo ya que al
declarar las propiedades con el modificador de acceso private no es posible visibilizar y acceder a ellas desde otra
clase, para lo solucionarlo y que sean accesibles se utilizan dos tipos de
métodos de acceso:
·
Setter o definidores.
·
Getters o captadores.
Getters
·
Función: devolver el valor de las propiedades
de los objetos
·
Sintaxis: public dato_a_devolver
nombre_metodo(){código + return }
Lo vemos en un ejemplo, vamos a la
clase Coche y vamos a crear un método Getter
que nos dé el largo del coche:
public String
dame_largo() {
return "El largo
del coche es: "+largo;
}
El dato a devolver es un String,
cuando instanciemos el objeto y llamemos a este método nos va a salir por
consola lo que hay dentro del return.
Si vamos a la clase Uso_vehiculos:
package poo;
public class Uso_vehiculos {
public static void main(String[] args) {
Coche
Renault = new Coche();
System.out.println(Renault.dame_largo());
}
}
Instanciamos la clase, mediante un System.out llamamos al método:
Para el siguiente método nos vamos a
crear tres propiedades más que no las vamos
a inicializar, va ser el color, el peso final del coche, si tiene asientos
de cuero y climatizador:
private int peso_final;
private String color;
private
boolean asientos_cuero,
climatizador;
Vamos a utilizar el método Setter:
·
Función: modificar el valor de las
propiedades de los objetos.
·
Sintaxis: public void nombre_metodo(){código}
Void indica que el método no devuelve
nada.
Vamos a suponer que queremos que todos
los coches sean de color azul, creamos el método Setter:
public void establece_color()
{
color="azul";
}
Este método no devuelve nada, da un
valor a la propiedad para que podamos acceder a esta propiedad tenemos que
crear un método Getter para acceder
a ella:
public String
dame_color() {
return "El color
del coche es: "+color;
}
Si vamos al archivo Uso_vehiculos:
package poo;
public class Uso_vehiculos {
public static void main(String[] args) {
Coche
Renault = new Coche();
Renault.establece_color();
//Llamamos
primero al método Setter
System.out.println(Renault.dame_color()); //Luego
llamamos al método Getter
}
}
Lo primero es llamar al método Setter que es el que nos indica el
valor de la propiedad y luego el método Getter,
si ejecutamos:
Si no llamáramos al método Setter, comentamos esa línea de código y ejecutáramos de nuevo:
El color del coche es null porque no tenemos acceso al valor
de la propiedad.
No hay comentarios:
Publicar un comentario