Menu
Coddy logo textTech

Özellikler

Coddy'nin PHP Journey'sinin Nesne Yönelimli Programlama bölümünün bir parçası — ders 6 / 91.

Özellikler (Properties), bir sınıfa ait olan değişkenlerdir. Nesnenin durumu hakkında bilgi depolarlar. PHP'de özellikler, public gibi bir görünürlük anahtar kelimesi kullanılarak sınıf içinde tanımlanmalıdır.

Özellikler varsayılan değerlere sahip olabilir — her yeni nesne aynı başlangıç değeriyle başlar, ancak her nesne kendi bağımsız kopyasını tutar:

<?php
class Student {
    public $school = "PHP Academy";  // varsayılan değer
    public $name;
    public $age;
}

Varsayılan değeri olmayan özellikler, siz onları ayarlayana kadar null olarak başlar.

Bir metot ve $this kullanarak özellik değerlerini ayarlayabilirsiniz:

class Student {
    public $school = "PHP Academy";
    public $name;
    public $age;

    public function setInfo($name, $age) {
        $this->name = $name;    // örnek verisini ayarla
        $this->age = $age;      // örnek verisini ayarla
    }
}

Öğrenci nesneleri oluşturun ve bireysel verilerini ayarlayın:

$student1 = new Student();
$student2 = new Student();

$student1->setInfo("Alice", 20);
$student2->setInfo("Bob", 22);

Özelliklere erişin:

echo $student1->name . "\n";          // Alice
echo $student2->name . "\n";          // Bob
echo $student1->school . "\n";        // PHP Academy
echo $student2->school . "\n";        // PHP Academy

Çıktı:

Alice
Bob
PHP Academy
PHP Academy

Temel Fark: Varsayılan değerlere sahip özellikler ($school gibi) her nesne için aynı değerle başlar. Metotlar aracılığıyla ayarlanan özellikler ($name ve $age gibi) her nesneye özgüdür.

challenge icon

Görev

Kolay

student.php dosyasındaki Student sınıfını tamamlayın:

  1. Varsayılan değeri "PHP Academy" olan bir $school özelliği tanımlayın
  2. $name ve $age özelliklerini tanımlayın (varsayılan değer yok)
  3. $name ve $age parametrelerini alan ve bunları $this kullanarak atayan bir setInfo metodu ekleyin

driver.php dosyası, iki öğrenci oluşturarak ve bilgilerini yazdırarak sınıfınızı test edecektir.

Kendin dene

<?php
require_once 'student.php';

$student1 = new Student();
$student2 = new Student();

$student1->setInfo("Alice", 20);
$student2->setInfo("Bob", 22);

echo $student1->name . " is " . $student1->age . " at " . $student1->school . "\n";
echo $student2->name . " is " . $student2->age . " at " . $student2->school . "\n";
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Nesne Yönelimli Programlama bölümündeki tüm dersler