Código:
Esta es mi subclase de la anterior:public abstract class Figuras2{ private double base; private double altura; public Figuras2(){ base=0; altura=0; } public Figuras2(double BASE,double ALTURA){ base=BASE; altura=ALTURA; } public void setBase(double BASE){ base=BASE; } public void setAltura(double ALTURA){ altura=ALTURA; } public double getBase(){ return base; } public double getAltura(){ return altura; } public abstract double area(); }
Código:
Y mi clase principal que es esta:public class Rectangulo extends Figuras2{ private double base; private double altura; public Rectangulo(){ } public Rectangulo(double BASE,double ALTURA){ super (BASE,ALTURA); } public double area(){ return getBase() * getAltura(); } }
Código:
public class TestFiguras2{ public static void main(String[]args){ Figuras2 f2=new Rectangulo(7,8); System.out.println("El area del rectangulo es de " + f2.area()); } }
Mis dudas son las siguientes:
1.-Siempre en la superclase debe haber un metodo abstracto? en este caso mi metodo area
2.-Que hacen las siguientes lineas de codigo ya que si las comento o elimino sigue funcionando sin errores el programa
Código:
3.-Y por ultimo, a la superclase se le debe de poner la palabra abstract o no es necesario? ya que vi un ejemplo en internet donde no le ponen la palabra y solo a la subclase si le ponen extends de la otra clasepublic void setBase(double BASE){ base=BASE; } public void setAltura(double ALTURA){ altura=ALTURA; }
Bueno espero me puedan ayudar con estas dudas que tengo y gracias de antemano.