"base." gör att man kommer åt basklassen i en ärvd klass.
Men om klassen man jobbar med har ärvt från 3 klasser allaredan.
object->control->minclass <---pseudokod men ni get the picture
Vad kommer man då om använder "base." i "minclass"?, den absolut första klassen "object"?.
Du kan bara ärva från en klass, multipelt arv finns inte. Så då blir det den klass du ärvt ifrån. Den klassen kan i sin tur ärva men det spelar ingen roll för dig.
OK, så man kommer inte till "basen" då?, utan man kommer bara 1 steg upp i hierarkin?.
Men konstigt att det inte heter "parent" istället?, det är ju lite missvisande med "base".
using System;
using System.Collections.Generic;
using System.Text;
namespace kattpess
{
class FarFar
{
public FarFar()
{
}
private string farfarproperty;
public string FarFarProperty
{
get { return farfarproperty; }
set { farfarproperty = value; }
}
}
class Far : FarFar
{
public Far()
{
}
private string farproperty;
public string FarProperty
{
get { return farproperty; }
set { farproperty = value; }
}
}
class Son : Far
{
public Son()
{
}
private string sonproperty;
public string SonProperty
{
get { return sonproperty; }
set { sonproperty = value; }
}
}
}
Men det stämmer inte, instansierar jag "Son" kommer jag åt "FarFarPropertyn", alltså kommer man åt hela hierarkin bakåt ju oavsett hur långt bakåt man ärvt
In some OOP languages, a base class may inherit from more than one base class.
.....
A class in .NET may inherit from a class that has already inherited from another class. In addition you may use an interface or even multiple interfaces within a class.