Używanie metod z klasy macierzystej

package pl.am.object2.lesson28;

public class Dziedziczenie {

    public static void main(String[] args) {
        Prostokat prostokat = new Prostokat(2, 5);
        Kwadrat kwadrat = new Kwadrat(7);

        kwadrat.setBok(8);

        System.out.println(prostokat);
        System.out.println(kwadrat);
    }
}
package pl.am.object2.lesson28;

public class Kwadrat extends Prostokat {

    public Kwadrat(double bok) {
        setA(bok);
        setB(bok);
    }

    public double getBok() {
        return getA();
    }

    public void setBok(double bok) {
        setA(bok);
        setB(bok);
    }

    @Override
    public String toString() {
        return "Kwadrat{" +
                "bok=" + getA() +
                ", pole=" + obliczPole() +
                ", obwód=" + obliczObwod() +
                '}';
    }
}
package pl.am.object2.lesson28;

public class Prostokat {
    private double a;
    private double b;

    public Prostokat() {
    }

    public Prostokat(double a, double b) {
        this.a = a;
        this.b = b;
    }

    public double getA() {
        return a;
    }

    public void setA(double a) {
        this.a = a;
    }

    public double getB() {
        return b;
    }

    public void setB(double b) {
        this.b = b;
    }

    public double obliczPole() {
        return this.a * this.b;
    }

    public double obliczObwod() {
        return 2*this.a + 2*this.b;
    }

    @Override
    public String toString() {
        return "Prostokat{" +
                "a=" + a +
                ", b=" + b +
                ", pole=" + obliczPole() +
                ", obwód=" + obliczObwod() +
                '}';
    }
}

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *