Kopiuj
public abstract class Figura {
public abstract double pole();
public abstract double obwod();
}
Kopiuj
public class Prostokat extends Figura{
private Punkt firstPoint;
private Punkt secondPoint;
private Punkt thirdPoint;
private Punkt fourthPoint;
public Punkt getFirstPoint() {
return firstPoint;
}
public void setFirstPoint(Punkt firstPoint) {
this.firstPoint = firstPoint;
}
public Punkt getSecondPoint() {
return secondPoint;
}
public void setSecondPoint(Punkt secondPoint) {
this.secondPoint = secondPoint;
}
public Punkt getThirdPoint() {
return thirdPoint;
}
public void setThirdPoint(Punkt thirdPoint) {
this.thirdPoint = thirdPoint;
}
public Punkt getFourthPoint() {
return fourthPoint;
}
public void setFourthPoint(Punkt fourthPoint) {
this.fourthPoint = fourthPoint;
}
public Prostokat(Punkt firstPoint, Punkt secondPoint, Punkt thirdPoint, Punkt fourthPoint) {
this.firstPoint = firstPoint;
this.secondPoint = secondPoint;
this.thirdPoint = thirdPoint;
this.fourthPoint = fourthPoint;
}
@Override
public double pole() {
return 0;
}
@Override
public double obwod() {
return 0;
}
}
Kopiuj
public class FigurySpr {
public static void main(String[] args) {
Punkt firstP = new Punkt(0, 0);
Punkt secondP = new Punkt(7, 0);
Punkt thirdP = new Punkt(7, 4);
Punkt fourthP = new Punkt(0, 4);
Figura prostokat = new Prostokat(firstP, secondP, thirdP, fourthP);
System.out.println(prostokat.pole());
System.out.println(prostokat.obwod());
}
}
Jeśli nie masz tego na jutro to bym dopytał prowadzącego, co z tą linią. Bo jeśli metody pole i obwód mają być abstrakcyjne, to trochę dziwnie wygląda, że w przestrzeni euklidesowej linia ma pole i obwód (nawet jeśli ma to wynosić 0).
Pamiętaj o hermetyzacji.
W klasie punkt zamiast meotdy wypiszWsp nadpisz metodę toString()
Resztę kodu zostawiam Tobie do zrobienia. Bez pisania samemu, za dużo się nie nauczysz.
edit: ogólnie zacząłem mieszać polski z angielskim (firstPoint itp) bo to z przyzwyczajenia. Ty trzymaj się jednej konwencji, albo pl albo eng. Najlepiej tje drugiej ;)