[
Hejsa.
Det er rigtigt at en klasse bliver til en "superklasse" når der er nogen som arver fra den. Nogen vælger også at kalde den en forældre/parent.
En abstrakt klasse gør i bund og grund det samme, men det er ikke alt som er implementeret i den.
Der findes også en type som hedder interface (hvis du kender til den). Denne klasse har ingen af metoderne implementeret. dvs. at der kun er et metodenavn+parameterliste (eks. public void myFunction(int variable); <-- bemærk at der ikke er nogen krop på metoden.
Forskellen mellem din "superklasse" og din abstrakte klasse er så, at den abstrakte klasse ikke have alle sine metoderskrop lavet, mens din "superklasse" har.
Det smarte ved at bruge en abtrakt klasse er, at man ikke kan bruge denne direkte. Dette kan man derimod med en "superklasse".
Dvs. at hvis du laver en abstrakt klasse og en almindelig klasse, kan du kun oprette en instans af en "normal" klasse.
NB. Grunden til at jeg har skrevet superklasse i gåseøjne, er fordi at alle klasser der i bund og grund arves fra, er en superklasse.-------------------------------
Hilsen Jimmi Westeberg
http://www.westsworld.dk /
http://www.aktivudvikler.dk ]
Hvis man har opbygget et klasseheraki som indeholder abstrakte klasser,skal man så skriver super for at kalde en metode fra klassen over (den klasse man har arvet fra)
eksempelvis hvis man har en printmetode print() i den pågældende klasse, som også skal udskrive noget via en metode fra klassen over som hedder print1. Skriver man så super.print1(); inden i print() metoden for at kombinerer dem.
Håber det er forståeligt.
MvH
TB