类方法属性重写和final关键字

<?php
/*
 * 类的继承(extends):
 * 指可以创建一个新的类,该类继承(extends) 了父类的属性和方法,并且可以添加自己的属性和方法
 *
 * final关键字
 * 防止类被继承
 * 防止类的方法被重写
 * final 不能用于属性
*/
final class Animal {
    protected static string $name;
    protected static int $age;
    public function __construct($name, $age)
    {
        self::$name = $name;
        self::$age = $age;
    }
    final public function eat(): void
    {
        echo self::$name . '在吃饭!';
    }
}

class Dog extends Animal {
    public function eat(): void
    {
        self::$name = '小动物';
        echo self::$name . '在大吃大喝!';
    }
    public function wangwang()
    {
        echo self::$name . '在汪汪叫';
    }
}

//var_dump(new Animal());
$animal = new Dog('小花', 2);
$animal->eat();

$dog = new Dog('neko', 18);

给TA打赏
共{{data.count}}人
人已打赏
日常笔记

php类的继承

2024-7-21 15:54:02

日常笔记

parent调用父类的方法和构造函数

2024-7-26 16:18:12

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
有新私信 私信列表
搜索