public class Rektangel extends Figur { protected int lengde, bredde; public Rektangel(int len, int bre) { lengde = len; bredde = bre; } public String hentNavn() { return "Rektangel"; } @Override public String toString() { return hentNavn(); } @Override public boolean equals(Object obj) { if (! (obj instanceof Rektangel)) { return false; } Rektangel r = (Rektangel) obj; return (lengde == r.lengde) && (bredde == r.bredde); } @Override public int areal() { return lengde * bredde; } // Overloading: Samme metodenavn, men ulik signatur // (dvs. unike kombinasjoner av returverdi, navn og parametere) // For kompilatoren er de helt vidt forskjellige, men for mennesker er de ganske like public Rektangel kopier() { return new Rektangel(lengde, bredde); } public Rektangel kopier(int skalering) { return new Rektangel((lengde * skalering), (bredde * skalering)); } }