php的访问属性:public;protect;private

任何地方;父类,自身,子类;自身
public;  protected;   private
变量var和函数省略的话是public属性。
注意,变量不能省略,直接$a='abc';即类属性必须定义为公有,受保护,私有之一。

<?php
/**
 * Define MyClass
 */
class  MyClass
{
    public  $public  =  'Public' ;
    protected  $protected  =  'Protected' ;
    private  $private  =  'Private' ;


    function  printHello ()
    {
        echo  $this -> public ;
        echo  $this -> protected ;
        echo  $this -> private ;
    }
}


$obj  = new  MyClass ();
echo  $obj -> public ;  // 这行能被正常执行
echo  $obj -> protected ;  // 这行会产生一个致命错误
echo  $obj -> private ;  // 这行也会产生一个致命错误
$obj -> printHello ();  // 输出 Public、Protected 和 Private




/**
 * Define MyClass2
 */
class  MyClass2  extends  MyClass
{
     // 可以对 public 和 protected 进行重定义,但 private 而不能
     protected  $protected  =  'Protected2' ;


    function  printHello ()
    {
        echo  $this -> public ;
        echo  $this -> protected ;
        echo  $this -> private ;
    }
}


$obj2  = new  MyClass2 ();
echo  $obj2 -> public ;  // 这行能被正常执行
echo  $obj2 -> protected ;  // 这行会产生一个致命错误
echo  $obj2 -> private ;  // 未定义 private
$obj2 -> printHello ();  // 输出 Public、Protected2 和 Undefined


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值