php中的类怎么用:面向对象编程的基石
1. 类的定义与使用
在PHP中,类是一种将数据和行为封装在一起的结构。类可以被看作是对象的蓝图或模板。要使用类,首先需要定义一个类,然后在代码中创建这个类的对象。定义类的基本语法如下:
```php class 类名 { // 属性 var $属性名; // 方法 function 方法名() { // 方法体 } } ```
例如,定义一个名为“Person”的类,包含姓名和年龄两个属性,以及一个显示个人信息的方法:
```php
class Person {
var $name;
var $age;
function showInfo() {
echo "姓名:" . $this->name . "
";
echo "年龄:" . $this->age . "
";
}
}
```
使用类时,需要先创建一个对象,然后通过对象调用类中的方法:
```php $person = new Person(); $person->name = "张三"; $person->age = 30; $person->showInfo(); ```
2. 构造函数和析构函数
构造函数和析构函数是类的特殊方法,分别在对象创建和销毁时自动调用。构造函数用于初始化对象的属性,析构函数用于释放对象占用的资源。
定义构造函数的语法如下:
```php class 类名 { function __construct() { // 初始化代码 } } ```
定义析构函数的语法如下:
```php class 类名 { function __destruct() { // 清理代码 } } ```
例如,为“Person”类添加构造函数和析构函数:
```php
class Person {
var $name;
var $age;
function __construct($name, $age) {
$this->name = $name;
$this->age = $age;
}
function __destruct() {
echo "销毁Person对象";
}
function showInfo() {
echo "姓名:" . $this->name . "
";
echo "年龄:" . $this->age . "
";
}
}
$person = new Person("张三", 30);
$person->showInfo();
unset($person); // 销毁对象
```
3. 访问控制符
PHP中的类支持访问控制符,包括public、private和protected。访问控制符用于限制对类成员的访问。
- public:类成员可以被任何外部代码访问。 - private:类成员只能在类内部访问,不能被外部代码访问。 - protected:类成员只能在类内部和继承自该类的子类中访问,不能被外部代码访问。
例如,为“Person”类的属性和方法添加访问控制符:
```php
class Person {
public $name;
private $age;
function __construct($name, $age) {
$this->name = $name;
$this->age = $age;
}
function showInfo() {
echo "姓名:" . $this->name . "
";
echo "年龄:" . $this->age . "
";
}
protected function showAge() {
echo "年龄:" . $this->age . "
";
}
}
$person = new Person("张三", 30);
$person->showInfo(); // 正确
// $person->showAge(); // 错误,showAge是protected方法
```
4. 继承和多态
继承是面向对象编程的另一个重要特性,允许一个类(子类)继承另一个类(父类)的属性和方法。多态是指子类可以重写父类的方法,实现不同的行为。
定义继承的语法如下:
```php class 子类名 extends 父类名 { // 子类特有的属性和方法 } ```
例如,定义一个“Student”类,继承自“Person”类,并重写“showInfo”方法:
```php class Student extends Person { var $grade; function __construct($name, $age, $grade) { parent::__construct($