前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >PHP中的访问修饰符简单比较

PHP中的访问修饰符简单比较

作者头像
砸漏
发布2020-10-21 10:56:42
5590
发布2020-10-21 10:56:42
举报
文章被收录于专栏:恩蓝脚本

PHP public访问修饰符

示例:

代码语言:javascript
复制
<?php 
header("content-type:text/html;charset=utf-8"); 
// BaseClass 
class pub { 
 public $tag_line = "ZaLou.Cn!"; 
 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(); 
? 

输出:

ZaLou.Cn! ZaLou.Cn! ZaLou.Cn!

private访问修饰符

private修饰符可在其定义的类及其父类或继承类中使用。如果一个类成员声明为protected,则只能在类本身内以及继承和父类中访问它。

示例:

代码语言:javascript
复制
<?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,则它只能由定义该成员的类访问。

示例:

代码语言:javascript
复制
<?php 
header("content-type:text/html;charset=utf-8"); 
// 基类
class demo { 
 private $name="ZaLou.Cn!"; 
  
 private function show() 
 { 
  echo "这是基类的私有方法"; 
 } 
} 
 
// 子类
class child extends demo { 
 function display() 
 { 
  echo $this- name; 
 } 
} 
 
// 对象声明
$obj= new child; 
 
// 出现异常---未捕获错误:调用私有方法demo::show()
//$obj- show(); 
 
//出现异常--未定义的属性:子级::$name
$obj- display(); 
? 

输出

从上例可以看出,它将显示错误,因为无法在类外访问私有类数据。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-09-11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档