public abstract class Sang { protected String tittel; protected String artist; protected int lengde; protected final String URL; protected static int antallSanger = 0; public Sang(String t, String a, int l, String url) { antallSanger++; tittel = t; artist = a; lengde = l; URL = url; } // Abstrakt metode // Alle ikke-abstrakte subklasser av Sang M? implementere denne metoden public abstract void spill(); // Returnerer lengden av sangen som en formatert streng public String formatertLengde() { return "" + (int) (lengde / 60) + ":" + (lengde % 60); } // Overrider Object sin toString() metode @Override public String toString() { return tittel + " av " + artist; } // Overrider Object sin equals() metode @Override public boolean equals(Object o) { if (!(o instanceof Sang)) { return false; } Sang s = (Sang) o; return tittel == s.tittel && artist == s.artist; } }