PHP面向对象-子类对父类成员的访问(一)

2023-04-28 09:12:41 浏览数 (1)

在PHP面向对象编程中,子类可以继承父类的属性和方法,并且可以访问和修改它们。子类可以通过继承和覆盖父类的方法来实现自己的行为,也可以通过调用父类的方法来扩展父类的行为。

访问继承的属性

子类可以继承父类的属性,并且可以使用它们来实现自己的行为。子类可以访问继承的属性,包括公共、保护和私有属性。下面是一个示例:

代码语言:javascript复制
class Animal {
    public $name;
    protected $age;
    private $color;

    public function __construct($name, $age, $color) {
        $this->name = $name;
        $this->age = $age;
        $this->color = $color;
    }

    public function getInfo() {
        echo "Name: " . $this->name . "n";
        echo "Age: " . $this->age . "n";
        echo "Color: " . $this->color . "n";
    }
}

class Dog extends Animal {
    public function __construct($name, $age, $color) {
        parent::__construct($name, $age, $color);
    }

    public function bark() {
        echo "Woof!n";
    }
}

$dog = new Dog("Fido", 3, "brown");
$dog->getInfo(); // Output: Name: Fido Age: 3 Color: brown

在上面的示例中,我们定义了一个Animal类,它有一个公共的name属性、一个保护的age属性和一个私有的color属性,以及一个公共的getInfo()方法。然后我们定义了一个Dog类,它继承自Animal类,并添加了一个bark()方法。我们创建了一个Dog对象,并使用继承的getInfo()方法访问了父类的属性。在子类中,我们使用parent::__construct()方法调用父类的构造函数来设置继承的属性。

在子类中,可以访问继承的公共和保护属性,但不能直接访问继承的私有属性。如果需要访问继承的私有属性,可以在父类中添加一个公共的访问器方法。

php

0 人点赞