加入收藏 | 设为首页 | 会员中心 | 我要投稿 开发网_郴州站长网 (http://www.0735zz.com/)- 云通信、区块链、物联设备、云计算、站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP中的访问修饰符简单对照

发布时间:2022-07-14 12:03:54 所属栏目:PHP教程 来源:互联网
导读:在本篇文章里小编给大家分享了关于PHP中的public,private和protected的简单比较,有需要的朋友们学习下。 PHP public访问修饰符 示例: ?php header(content-type:text/html;charset=utf-8); // BaseClass class pub { public $tag_line = php粉丝网!; fun
  在本篇文章里小编给大家分享了关于PHP中的public,private和protected的简单比较,有需要的朋友们学习下。
 
  PHP public访问修饰符
 
  示例:
 
  <?php  
  header("content-type:text/html;charset=utf-8");  
  // BaseClass  
  class pub {  
   public $tag_line = "php粉丝网!";  
   function display() {  
    echo $this->tag_line."<br/>";  
   }  
  }  
     
  // 子类
  class child extends pub {  
   function show(){  
    echo $this->tag_line;  
   }  
  }  
     
  // 对象声明
  $obj= new child;  
     
  // 输出
  echo $obj->tag_line."<br/>";  
     
  $obj->display();  
     
  $obj->show();  
  ?>
  输出:
 
  php粉丝网!
 
  php粉丝网!
 
  php粉丝网!
 
  private访问修饰符
 
  private修饰符可在其定义的类及其父类或继承类中使用,如果一个类成员声明为protected,则只能在类本身内以及继承和父类中访问它。
 
  示例:
 
  <?php  
  header("content-type:text/html;charset=utf-8");  
  // 基类
  class pro {  
   protected $x = 500;  
   protected $y = 500;  
        
   // 实现减法  
   function sub()  
   {  
    echo $sum=$this->x-$this->y . "<br/>";  
   }   
  }  
     
  // 子类-继承类
  class child extends pro {  
   function mul() //实现乘法
   {  
    echo $sub=$this->x*$this->y;  
   }  
  }  
     
  $obj= new child;  
  $obj->sub();  
  $obj->mul();  
  ?>
  输出:
 
  0
 
  250000
 
  protected访问修饰符
 
  protected修饰符可在定义它的类中使用,注:它不能在类外部访问意味着继承类。
 
  如果类成员声明为private,则它只能由定义该成员的类访问。
 
  示例:
 
  <?php  
  header("content-type:text/html;charset=utf-8");  
  // 基类
  class demo {  
   private $name="php粉丝网!";  
      
   private function show()  
   {  
    echo "这是基类的私有方法";  
   }  
  }  
     
  // 子类
  class child extends demo {  
   function display()  
   {  
    echo $this->name;  
   }  
  }  
     
  // 对象声明
  $obj= new child;  
     
  // 出现异常---未捕获错误:调用私有方法demo::show()
  //$obj->show();  
     
  //出现异常--未定义的属性:子级::$name
  $obj->display();  
  ?>
  输出
 
  从上例可以看出,它将显示错误,因为无法在类外访问私有类数据。

(编辑:开发网_郴州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读