Está en la página 1de 10

 Un coche es un vehículo

 Una furgoneta es un vehículo


 Un camión es un vehículo
 Una moto es un vehículo

1
2
La clase VehiculoTurismo hereda de la clase Vehiculo.

 La clase Vehiculo pasará hacer una superclase


 La clase VehiculoTurismo pasará hacer una subclase

Dentro del constructor de la subclase VehiculoTurismo se colocará:

 La palabra reservada super() llama al constructor de la clase Vehiculo.


 Damos un valor al atributo puertas.

El método mostrarDatos() de las subclase sobreescribirá al método mostrarDatos()


de la superclase.

Nos hemos ahorrado el tener que definir de nuevo los atributos de la clase Vehiculo
(reutilización de código).

Sobrecarga de métodos

La sobrecarga de métodos es la creación de varios métodos con el mismo nombre


pero con diferente lista de tipos de parámetros. Java utiliza el número y tipo de
parámetros para seleccionar cuál definición de método ejecutar.

Java diferencia los métodos sobrecargados con base en el número y tipo de


parámetros o argumentos que tiene el método y no por el tipo que devuelve.

3
Si colocamos como private los atributos de la clase Vehiculo, ocurrirá que desde la
clase VehiculoTurismo no podemos acceder a dichos atributos, debido a que el
modificador private implica que los mismos solo pueden ser accedidos desde la
propia clase y no desde las clases que heredan.

4
Para corregir esto podemos hacer dos cosas:

 Cambiar el modificador de los atributos a protected


 Utilizar los métodos getter

protected

Al cambiar el modificador de los atributos a protected, implica que podremos


acceder a los atributos de la superclase desde la subclase.

Métodos getter

 Tenemos que utilizar la palabra reservada super para acceder a los métodos
de la clase Vehiculo.

 También podemos utilizar los métodos de la superclase directamente.

5
Sobrecarga de constructores

Un constructor se encarga de darle un estado inicial a los objetos.

Un constructor:

 Debe tener el mismo nombre que la clase a la cual pertenece.


 No devuelve ningún valor.
 No lleva el método void.

Una sobrecarga de constructores implica que una misma clase puede tener varios
constructores, cada uno con número de argumentos distintos. Esto se hace para
conseguir que varios objetos de la misma clase tengan diferentes estados iniciales.

Se pueden crear tantos constructores dependiendo del número y el orden de tipos


de parámetros.

Se puede tener un constructor que:

 reciba dos (String, int)


 reciba dos (int, String)
 reciba dos (String, String)
 reciba dos (int, int)

No se podría hacer otro constructor con dos parámetros (String, String) porque ya
existe.

No debe coincidir en la conjunción de tres factores en cuanto a los parámetros:

 número
 tipo
 orden

6
Cuando utilizamos el operador this dentro de un constructor, se hace una llamada
a otro constructor de la misma clase que coincida con el número de parámetros y
tipo.

this es una palabra reservada que hace referencia al objeto actual de la clase, es
decir, a una instancia concreta de la clase y nos sirve para:

 usar los métodos y atributos de esa clase desde alguno de sus métodos
 llamar a otro de sus constructores
 o simplemente para pasarle el objeto completo a algún otro método u objeto

7
Variables y Constantes de clase. Uso static

Si tenemos una clase con dos atributos (id, nombre), cada objeto de la clase tendrá
sus propios valores para sus atributos.

Se puede dar el caso, que por error, introduzcamos el valor 1 para al atributo id a
dos objetos.

Para evitar esto, tenemos que declarar otro atributo de tipo entero como static.

Al declarar una variable como static, se pone en cursiva, indicando que se convierte
en una variable de clase, es decir, esta variable no pertenece a ningún objeto
sino que pertenece a la propia clase.

Cada objeto de la clase Empleado tendrá su propio atributo id y nombre, pero la


variable idSiguiente solo pertenecerá a la propia clase Empleado.

8
Para que cada empleado tenga un id correlativo, tenemos que:

 darle un valor inicial a la variable de clase idSiguiente


 al crear un objeto, su id será igual al valor que tenga en ese instante
idSiguiente
 se autoincrementa en uno el valor de idSiguiente

9
Métodos static

10