“Inheritance” (Miras alma), nesne tabanlı programlamada bir sınıfın başka bir sınıftan özellikleri ve davranışları miras alması anlamına gelir. Bu, kodun tekrar kullanılabilirliğini artıran ve kodu daha düzenli hale getiren bir programlama konseptidir.
İşte inheritance’ın nasıl kullanıldığını ve neler sağladığını anlamak için basit bir örnek:
class Animal {
public $name;
public function __construct($name) {
$this->name = $name;
}
public function eat() {
return $this->name . ' is eating.';
}
public function sleep() {
return $this->name . ' is sleeping.';
}
}
class Dog extends Animal {
public function bark() {
return $this->name . ' is barking.';
}
}
class Cat extends Animal {
public function meow() {
return $this->name . ' is meowing.';
}
}
Bu örnekte, Animal
sınıfı genel hayvan özelliklerini tanımlar. Dog
sınıfı, Animal
sınıfından miras alır ve ayrıca kendi özel davranışlarını ekler (bark
metodu). Aynı şekilde, Cat
sınıfı da Animal
sınıfından miras alır ve kendi özel davranışlarını ekler (meow
metodu).
Bu sınıfları kullanmak için:
$dog = new Dog('Buddy');
echo $dog->eat(); // Buddy is eating.
echo $dog->bark(); // Buddy is barking.
echo $dog->sleep(); // Buddy is sleeping.
$cat = new Cat('Whiskers');
echo $cat->eat(); // Whiskers is eating.
echo $cat->meow(); // Whiskers is meowing.
echo $cat->sleep(); // Whiskers is sleeping.
Burada, Dog
ve Cat
sınıfları, Animal
sınıfının özelliklerini ve davranışlarını miras alarak kendi özel davranışlarını eklemişlerdir. Bu sayede, genel bir sınıfın özelliklerini kullanarak özel davranışlar eklemek ve kodu tekrar kullanmak mümkün olmuştur.
Inheritance, özellikle bir sınıfın diğerine benzer bir sınıf oluşturulması durumunda ve kodun paylaşılması gerektiğinde kullanılır. Ancak, aşırı kullanımı ve yanlış kullanımı, karmaşık ve sıkı bağlı sınıflara yol açabilir, bu nedenle inheritance kullanımına dikkat etmek önemlidir. Yerine göre, composition gibi başka teknikler de düşünülmelidir.
İlk Yorumu Siz Yapın