php相关知识总结

class Father{
    public static function getStatic(){
        return new static();
    }
    public static function getSelf(){
        return new self();
    }
}
trait GrandFather{
    public static function getStatic(){
        return new static();
    }
    public static function getSelf(){
        return new self();
    }
}
class Son1{
 use GrandFather;
}
class Son2 extends Father {

}
$o1 = Son1::getStatic();
$o2 = Son2::getStatic();

new static和new self的表现,self时是new父类自己,static是代表当前子类且在使用extend和trait时效果一样

posted @ 2021-03-14 10:40  大匠  Views(48)  Comments(0Edit  收藏  举报