Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Penggunaan dan contoh kata kunci awam dalam PHP

Penggunaan dan contoh kata kunci awam dalam PHP

WBOY
WBOYasal
2023-06-28 20:38:151588semak imbas

Kata kunci awam dalam PHP ialah pengubah suai akses dalam pengaturcaraan berorientasikan objek. Ia digunakan untuk menunjukkan bahawa ahli (sifat dan kaedah) adalah awam dan boleh diakses dari mana-mana sahaja dalam kelas. Artikel ini akan memperkenalkan penggunaan dan contoh kata kunci awam dalam PHP.

  1. Pengubahsuaian awam atribut

Dalam PHP, kita boleh menggunakan kata kunci awam untuk mengubah suai atribut kelas supaya ia boleh diakses dari mana-mana dalam kelas. Sebagai contoh, kami mentakrifkan kelas Person dan menggunakan kata kunci awam untuk mengubah suai atribut $name:

class Person {
    public $name;
    
    public function __construct($name) {
        $this->name = $name;
    }
    
    public function greet() {
        echo "Hello, my name is " . $this->name;
    }
}

$person = new Person("John");
$person->name = "Mike";  // 修改属性值
echo $person->name;  // 访问属性值

Dalam contoh di atas, kami boleh terus mengakses dan mengubah suai atribut $name objek $person kerana ia diubah suai oleh orang ramai kata kunci. Dengan memanggil kaedah $person->greet() , kita boleh mengeluarkan "Hello, nama saya Mike".

  1. Pengubahsuaian awam kaedah

Selain atribut, kami juga boleh menggunakan kata kunci awam untuk mengubah suai kaedah kelas. Kaedah yang diubah suai oleh orang awam boleh dipanggil terus oleh kod luaran kelas. Sebagai contoh, kami terus menggunakan kelas Orang di atas dan menambah kaedah sayHello yang diubah suai awam:

class Person {
    public $name;
    
    // 构造方法
    
    // 属性$name
    
    public function greet() {
        echo "Hello, my name is " . $this->name;
    }
    
    public function sayHello($to) {
        echo "Hello, " . $to;
    }
}

$person = new Person("John");
$person->sayHello("Mike");  // 调用public方法

Dalam contoh di atas, kami boleh memanggil kaedah diubah suai awam dalam kelas Orang melalui $person->sayHello("Mike") kaedah sayHello dan output "Hello, Mike".

  1. Warisan pengubah suai awam

Apabila kelas mewarisi kelas lain, pengubah akses bagi sifat dan kaedah yang diwarisi mengikuti warisan. Jika sifat atau kaedah yang diwarisi adalah umum, ia juga akan menjadi umum dalam subkelas. Sebagai contoh, kami mentakrifkan kelas Pelajar yang mewarisi daripada kelas Orang:

class Student extends Person {
    public $grade;
    
    public function study() {
        echo "I am studying in grade " . $this->grade;
    }
}

$student = new Student("Alice");
$student->name = "Bob";  // 从父类继承的public属性
echo $student->name;  // 从父类继承的public属性
$student->study();  // 调用从父类继承的public方法

Dalam contoh di atas, kelas Pelajar mewarisi kelas Orang dan boleh terus mengakses dan mengubah suai harta awam $nama yang diwarisi daripada kelas induk dan memanggil harta awam $nama yang diwarisi daripada kelas induk kaedah awam.

Ringkasan:

Dalam PHP, kata kunci awam digunakan untuk mentakrifkan kebenaran akses bagi sifat dan kaedah kelas sebagai awam dan boleh diakses dari mana-mana sahaja dalam kelas. Sifat dan kaedah yang diubah suai oleh awam boleh dipanggil terus dan diubah suai dalam kod dalaman dan luaran kelas. Selain itu, mekanisme pewarisan pengubah suai awam membenarkan subkelas untuk mewarisi dan menggunakan sifat dan kaedah awam dalam kelas induk. Dengan menggunakan kata kunci awam secara rasional, kami boleh merangkum kod dengan lebih baik dan meningkatkan kebolehselenggaraan dan kebolehgunaan semula kod.

Di atas adalah penggunaan dan contoh kata kunci awam dalam PHP saya harap ia akan membantu pembaca dalam memahami dan menggunakan kata kunci awam.

Atas ialah kandungan terperinci Penggunaan dan contoh kata kunci awam dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn