is a (kalıtım) ___________ is a ___________
class Araba { }
class Opel : Araba { }
Opel bir arabadır. (is-a)
class Hayvan { }
class İnek : Hayvan { }
İnek bir hayvandır. (is-a)
has a __________ has a _____________
Bir sınıfın başka biri sınıfın nesnesine sahip olma durumudur.
class Araba {}
class Opel : Araba
{
Motor motor;
}
class Motor {}
Opel bir arabadır (is-a)
Opelin bir motoru vardır (has-a)
class Personel { }
class Sekreter : Personel
{
Bilgisayar bilgisayar;
}
class Bilgisayar {}
Sekreter bir personeldir (is-a)
Sekreterin bir bilgisayarı vardır (has-a)
can – do
İnterface yapılanmasının getirisi olan bir ilişki türüdür. İnterface sınıfın imzasıdır. Bir sınıfın içindeki tüm memberların şablonunu/arayüzünü oluşturan kontrattır.
İnterfaceler içlerindeki memberların imzalarını class lara uygulattırdığından dolayı o interfaceler ilgili nesnelerin yapabilecekleri kabiliyetleri göstermektedir.
Can-do ilişkisi bir nesnenin davranışkarını/kabiliyetlerini belirtmektedir.
interface IAraba // Bu interface i implemente eden tüm sınıflar gazla ve frenle davranışları olabilir. (Bu interface i uygulayan sınıflar gazlayabilir, frenleyebilir)
{
void Gazla(); // Metot imzaları , Accessmodify kullanılmaz çünkü sınıftaki memberları her türlü uygulayacak.
void Frenle();
}
class Opel : IAraba // : kalıtım operatörü değil çünkü IAraba bir interface. : operatörü implementasyon operatörüdür.
{
public void Gazla () {
}
public void Frenle () {
}
}