Una clase abstracta no puede ser instanciada (Crear un objeto a partir de ella).
Métodos abstractos
Estos métodos son parte de clases abstractas
Un método abstracto debe ser redefinido en las subclases.
Cada subclase puede definir el método de manera diferente.
Las clases abstractas pueden contener métodos que no son abstractos.
Laboratorio.
Que falta en el siguiente código?
Item.java
public abstract class Item {
protected String titulo;
protected float precio = 5.0f;
public abstract boolean esAlquilable();
public float getPrecio() {
return precio;
}
}
Pelicula.java
public class Pelicula extends Item {
public boolean esAlquilable() {
return true;
}
}
Libro.java
public class Libro extends Item {
public float getPrecio() {
return 0.0f;
}
}
TestAbstract.java
public class TestAbstract {
public static void main (String[] args) {
Pelicula pelicula = new Pelicula();
Libro libro = new Libro();
System.out.println(pelicula.esAlquilable());
System.out.println(pelicula.getPrecio());
System.out.println(libro.esAlquilable());
System.out.println(libro.getPrecio());
}
}
Gracias amigo me ayudo entenderle. Mi profesor no me volverá a tomar por sorpresa otra vez
ResponderEliminaresta bien
ResponderEliminarFaltaría implementar el método abstracto esAlquilable() en la subclase Libro ;)
ResponderEliminar