Inheritance & interface implementatie

Status
Niet open voor verdere reacties.

bn2vs

Terugkerende gebruiker
Lid geworden
18 aug 2007
Berichten
1.705
ik heb deze code
Code:
class FileDownloader : System.Object, IDisposable

is dat correct? overduidelijk wil ik System.Object inheriten en IDisposable implementen. vind het redelijk raar hoe het nu is omdat er in de syntaxis geen onderschijd word gemaakt tussen class inheritance en interface implementatie...

Cheers
BN
 
Dat komt doordat een klasse slechts van 1 andere klasse kan overerven en meerdere interfaces kan implementeren. Verder is de standaard dat eerst (als aanwezig) de overerving moeten worden aangeduid en pas daarna de interface. De syntax is overigens erg logisch daar interfaces worden gebruikt om Multiple inheritance op een veilige manier ( zonder kans op het diamond probleem) te emuleren.
Code:
//Niet correct

class Test:ICloneable,Object
	{
	}

//Correct
class Test:Object,ICloneable
	{
	}
 
Oke, bedankt voor de verduidelijking :)
 
Hey,

even nog een verduidelijking.
Elke klasse wordt overgeërft van een System.Object.
Dit hoef je niet aan te geven.;)

Een voorbeeld hoe je er achter komt is dat de methode ToString() in elke klasse instantie aanwezig is. Deze methode wordt aangemaakt in de System.Object klasse en is te overschrijven.

mvg,
Mathijs
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan