PHP Sınıflar (Classes)

PHP Sınıflar (Classes)

OOP(Object Oriented Programming): Nesne Yönelimli Programlama(NYP) olarak tanımlanan OOP, bir yazılım geliştirme paradigmasıdır. Kod tekrarını önleyen, modüler program geliştirmeyi amaç edinen bir yaklaşımdır.

OOP'nin temelini oluşturan Sınıflar(Classes); yazılımsal nesne oluşturan, her nesneye ait özellik ve davranışları tutan, türetilebilen ve tekrar tekrar kullanılabilen anlamlı kod bloklarıdır.

Sınıflar RAM bellekte yer kaplamazlar, ancak sınıflardan türetilen nesneler RAM bellekte yer kaplamaktadırlar.

Class içerisinde tanımlanmış bir fonksiyondan, aynı class içerisinde tanımlanmış fonksiyonlara ve değişkenlere "$this" ifadesi ile erişim sağlanır.

Sınıf Tanımlama:

class Araba {
    // Sınıf özellikleri (değişkenler)
    public $marka;
    public $model;

    // Kurucu metod (constructor)
    public function __construct($marka, $model) {
        $this->marka = $marka;
        $this->model = $model;
    }

    // Sınıf metodu
    public function calistir() {
        return "Araba çalıştırıldı.";
    }
}

Nesne Oluşturma (İnstance):

// Araba sınıfından bir nesne oluşturma
$araba1 = new Araba("Toyota", "Corolla");

Erişim ve Kullanım:

// Özelliklere erişim
echo $araba1->marka;           // Çıktı: Toyota

// Metodları çağırma
echo $araba1->calistir();          // Çıktı: Araba çalıştırıldı.

Miras Alma (Inheritance):

class SUV extends Araba {
    public $kasaTipi = "SUV";
}

// SUV sınıfından bir nesne oluşturma
$suv1 = new SUV("Jeep", "Wrangler");

// Özelliklere erişim
echo $suv1->kasaTipi;            // Çıktı: SUV

Erişim Belirleyicileri (Access Modifiers):

  • public: Herhangi bir yerden erişilebilir.
  • protected: Yalnızca sınıf içinden veya sınıfın alt sınıflarından erişilebilir.
  • private: Sadece sınıf içinden erişilebilir.

class Example {
    public $publicVar;
    protected $protectedVar;
    private $privateVar;

    public function __construct() {
        $this->publicVar = "Public";
        $this->protectedVar = "Protected";
        $this->privateVar = "Private";
    }
}

$example = new Example();
echo $example->publicVar;           // Çıktı: Public
//echo $example->protectedVar;           // Hata! Erişim reddedildi.
//echo $example->privateVar;                // Hata! Erişim reddedildi.

Özel Metodlar:

  • __construct(): Sınıfın kurucu metodu.
  • __destruct(): Nesne yok edildiğinde çağrılan metot.
  • __toString(): Nesne bir dize olarak kullanılmak istendiğinde çağrılan metot.

Magic Methods (Sihirli Metotlar):

class MyClass {
    public function __get($name) {
        echo "Dinamik olarak erişilmeye çalışılan özellik: $name";
    }
}

PHP sınıfları, kodları modülerleştirmenin, bakımını kolaylaştırmanın ve kod tekrarını önlemenin güçlü bir yoludur. Nesne yönelimli programlama, daha karmaşık uygulamalar geliştirmek için önemli bir yapı taşıdır ve PHP'nin sunduğu sınıf ve nesne yapısı, bu tür projelerin geliştirilmesini kolaylaştırır.

Randevu

Hakkımda


Şaban Çetin

...

İletişim Formu


Sosyal Medya


...

...

...

© Copyright: www.griadam.com.tr