abstract class Figur { int ID; public int areal() { return 0; }; } class Firkant extends Figur { protected int lengde; protected int bredde; Firkant(int l, int b) { lengde = l; bredde = b; } @Override public int areal() { return lengde * lengde; } @Override public boolean equals(Object obj) { if (obj instanceof Firkant) { Firkant f = (Firkant) obj; return lengde == f.lengde && bredde == f.bredde; } else { return false; } } } class Alltid3LengdeFirkant extends Firkant { Alltid3LengdeFirkant(int b) { super(3, b); } } class Kvadrat extends Firkant { Kvadrat(int side) { super(side, side); } public void skrivUtSide() { System.out.println(lengde); } @Override public int areal() { System.out.println("Dette er et kvadrat. "); return lengde * bredde; } @Override public String toString() { return "Kvadrat med sidelengde: " + lengde; } }