//Drikke er abstrakt, som betyr av vi ikke kan lage objekter av denne klassen abstract class Drikke{ int dl = 5; public Drikke(int d){ dl = d; } protected void drikk(int mengde){ dl = dl - mengde; } protected void fyllPaa(int mengde){ dl = dl + mengde; } //Dersom du vil lage en abstrakt metode, er dette syntaxen //abstract protected int hentHovedVerdi(); } //Alkohol utvider Drikke, som betyr at den arver egenskapene til Drikke class Alkohol extends Drikke{ int prosent; public Alkohol(int d, int p){ super(d); //Her bruker vi konstruktoeren til superKlassen Drikke. Saa slipper vi aa skriver kode paa nytt. prosent = p; //Vi maa sette prosent selv, siden dette ikke eksisterer i superklassen } public void spike(int p){ prosent = prosent + p; } } //Oel arver fra Alkohol. class Oel extends Alkohol{ int soedme; public Oel(int d, int p, int s){ super(d,p); soedme = s; } public int hentSoedme(){ return soedme; } } class Vann extends Drikke{ int kullsyre; public Vann(int d, int k){ super(d); kullsyre = k; } public int hentKullsyre(){ return kullsyre; } } class Brus extends Drikke{ int kullsyre; int sukker; String smak; public Brus(int d, int k, int s, String sm){ super(d); kullsyre = k; sukker = s; smak = sm; } public void blandSmak(String sm){ smak = smak + " og " + sm; } }