Abstract osztály

Feladat:

Hozzuk létre a LakoIngatlan osztályt, amely tartalmazza, hogy a lakótér hány négyzetméter, és tartalmaz egy absztrakt osszTerulet metódust, ami visszaadja a teljes ingatlan alapterületét. Származtassuk le a Lakóingatlanból a KertesHaz osztályt, ahol a kert méretét is tároljuk.


public abstract class LakoIngatlan {
    private double lakoter;
    
    public LakoIngatlan(double lakoter){
        this.setLakoter(lakoter);
    }

    public double getLakoter() {
        return lakoter;
    }

    public void setLakoter(double lakoter) {
        this.lakoter = lakoter;
    }
    
    /* Absztrakt metódus - virtuális törzsű metódus */
    public abstract double osszterulet();
    
    public String toString(){
        return "Lakóterület: " + this.getLakoter() + " nm, ";
    }
}

public class KertesHaz extends LakoIngatlan {

    private double kert;

    public KertesHaz(double lakoter, double kert) {
        super(lakoter); /* Ősosztály konstruktorának hívása */
        this.setKert(kert);
    }

    public double getKert() {
        return kert;
    }

    public void setKert(double kert) {
        this.kert = kert;
    }
    
    /* Absztrakt metódus kifejtése */
    public double osszterulet() {
        return this.getLakoter() + this.getKert();
    }

    /* Felüldefiniálás */
    public String toString() {
        return super.toString()
                + "Kert: " + this.getKert() + " nm, "
                + "Összterület: " + this.osszterulet() + " nm";
    }
}

Java tanfolyam, öröklődés, felüldefiniálás
2019-03-07