PHP子类对象不能直接访问父类的属性

今天再看PHP手册时候发现一个问题,那就是PHP子类对象不能直接访问父类的属性,这实在让人疑惑,现在先记录,以后看有什么解释没有。例子:

class MyClass

{

    public $public = 'Public';

    protected $protected = 'Protected';

    private $private = 'Private';

    function printHello()

    {

echo "This is Myclass".PHP_EOL;

        echo $this->public.PHP_EOL;

        echo $this->protected,PHP_EOL;

        echo $this->private,PHP_EOL;

    }

}

class MyClass2 extends MyClass

{

public $public = 'Publi2c';

    protected $protected = 'Protected2';

    function printHello2()

    {

        echo $this->public.PHP_EOL;

        echo $this->protected,PHP_EOL;

        echo parent::$public,PHP_EOL; //此时,会报错,Uncaught Error: Access to undeclared static property: MyClass::$public 

    }

}

$obj2 = new MyClass2();

$obj2->printHello2();

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,174评论 19 139
  • 一、数组 1、数组定义 数组就是一个键值对组成的语言结构,键类似于酒店的房间号,值类似于酒店房间里存储的东西。 $...
    空谷悠阅读 4,208评论 4 11
  • 前言 前几天在GitHub看到一篇写PHP简洁之道的译文,觉得还不错,所以转在了自己的博客中,只不过有一些地方好像...
    guanguans阅读 3,693评论 3 6
  • PHP 是服务器端脚本语言; PHP(全称:PHP:Hypertext Preprocessor,即"PHP:超文...
    wyude阅读 3,372评论 2 5
  • 常常有人调侃道“同一个世界,同一个妈”,那么,同一个世界,我有一个与众不同的老爸。 我的老爸,他不老,却总是在笑起...
    大流芒阅读 3,085评论 2 3

友情链接更多精彩内容