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


Posted in PHP onFebruary 02, 2019

PHP public访问修饰符

示例:

<?php 
header("content-type:text/html;charset=utf-8"); 
// BaseClass 
class pub { 
 public $tag_line = "三水点靠木!"; 
 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(); 
?>

输出:

三水点靠木!

三水点靠木!

三水点靠木!

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="三水点靠木!"; 
  
 private function show() 
 { 
  echo "这是基类的私有方法"; 
 } 
} 
 
// 子类
class child extends demo { 
 function display() 
 { 
  echo $this->name; 
 } 
} 
 
// 对象声明
$obj= new child; 
 
// 出现异常---未捕获错误:调用私有方法demo::show()
//$obj->show(); 
 
//出现异常--未定义的属性:子级::$name
$obj->display(); 
?>

输出

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

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

PHP 相关文章推荐
mysql_fetch_row,mysql_fetch_array,mysql_fetch_assoc的区别
Apr 24 PHP
php INI配置文件的解析实现分析
Jan 04 PHP
php判断是否为json格式的方法
Mar 04 PHP
php计算2个日期的差值函数分享
Feb 02 PHP
浅析THINKPHP的addAll支持的最大数据量
Feb 03 PHP
PHP获取ip对应地区和使用网络类型的方法
Mar 11 PHP
PHP下载生成的csv文件及问题总结
Aug 06 PHP
详解WordPress中分类函数wp_list_categories的使用
Jan 04 PHP
谈谈PHP连接Access数据库的注意事项
Aug 12 PHP
Zend Framework过滤器Zend_Filter用法详解
Dec 09 PHP
php unicode编码和字符串互转的方法
Aug 12 PHP
PHP删除数组中特定元素的两种方法
Feb 28 PHP
PHP PDOStatement::setAttribute讲解
Feb 01 #PHP
PHP PDOStatement::rowCount讲解
Feb 01 #PHP
PHP PDOStatement::nextRowset讲解
Feb 01 #PHP
PHP PDOStatement::getColumnMeta讲解
Feb 01 #PHP
PHP PDOStatement::getAttribute讲解
Feb 01 #PHP
PHP PDOStatement::fetchObject讲解
Feb 01 #PHP
Laravel框架搜索分页功能示例
Feb 01 #PHP
You might like
PHP 5昨天隆重推出--PHP 5/Zend Engine 2.0新特性
2006/10/09 PHP
Notice: Undefined index: page in E:\PHP\test.php on line 14
2010/11/02 PHP
解析PHP留言本模块主要功能的函数说明(代码可实现)
2013/06/25 PHP
PHP父类调用子类方法的代码例子
2014/04/09 PHP
PHP获取当前文件的父目录方法汇总
2016/07/21 PHP
Laravel框架Eloquent ORM删除数据操作示例
2019/12/03 PHP
子窗体与父窗体传值示例js代码
2013/08/01 Javascript
基于jQuery实现页面搜索功能
2020/03/26 Javascript
JavaScript评论点赞功能的实现方法
2017/03/13 Javascript
easyui combogrid实现本地模糊搜索过滤多列
2017/05/13 Javascript
JavaScript转换数据库DateTime字段类型方法
2017/06/27 Javascript
JavaScript判断浏览器和hack滚动条的写法
2017/07/23 Javascript
Vue组件之全局组件与局部组件的使用详解
2017/10/09 Javascript
基于Bootstrap表单验证功能
2017/11/17 Javascript
Vue项目数据动态过滤实践及实现思路
2018/09/11 Javascript
微信小程序封装自定义弹窗的实现代码
2019/05/08 Javascript
JavaScript实现图片的放大缩小及拖拽功能示例
2019/05/14 Javascript
深入解读VUE中的异步渲染的实现
2020/06/19 Javascript
Javascript如何实现扩充基本类型
2020/08/26 Javascript
python实现布隆过滤器及原理解析
2019/12/08 Python
Python箱型图处理离群点的例子
2019/12/09 Python
python matplotlib画盒图、子图解决坐标轴标签重叠的问题
2020/01/19 Python
python实现一个猜拳游戏
2020/04/05 Python
python中查看.db文件中表格的名字及表格中的字段操作
2020/07/07 Python
Scrapy基于scrapy_redis实现分布式爬虫部署的示例
2020/09/29 Python
python Matplotlib数据可视化(1):简单入门
2020/09/30 Python
HTML5触摸事件演化tap事件介绍
2016/03/25 HTML / CSS
浅谈HTML5中dialog元素尝鲜
2018/10/15 HTML / CSS
运动鞋中的劳斯莱斯:索康尼(SAUCONY)
2017/08/09 全球购物
阿联酋网上花店:Ferns N Petals
2018/02/14 全球购物
2014年绩效考核工作总结
2014/12/11 职场文书
2014年小学体育工作总结
2014/12/11 职场文书
校运会班级霸气口号
2015/12/24 职场文书
低门槛开发iOS、Android、小程序应用的前端框架详解
2021/10/16 Javascript
Nginx的基本概念和原理
2022/03/21 Servers
Docker与K8s关系介绍不会Docker也可以使用K8s
2022/06/25 Servers