php面向对象之访问权限修饰符
2016-12-07 18:21
288 查看
PHP中有三种访问修饰符,分别是:
public(公共的、默认)
protected(受保护的)
private(私有的)
public(公共的、默认)在PHP5中如果类没有指定成员的访问修饰符,默认就是public的访问权限。
protected(受保护的)被声明为protected的成员,只允许该类的子类进行访问。
private(私有的 ) 被定义为private的成员,对于类内部所有成员都可见,没有访问限制。对类外部不允许访问。
图解
多的不说,上代码
public(公共的、默认)
protected(受保护的)
private(私有的)
public(公共的、默认)在PHP5中如果类没有指定成员的访问修饰符,默认就是public的访问权限。
protected(受保护的)被声明为protected的成员,只允许该类的子类进行访问。
private(私有的 ) 被定义为private的成员,对于类内部所有成员都可见,没有访问限制。对类外部不允许访问。
图解
多的不说,上代码
<?php class person { public $name; protected $age; < 4000 /span>private $secret; public function __construct($name, $age, $secret) { $this->name = $name; $this->age = $age; $this->secret = $secret; } public function sayMyInfo1() { printf("my name's %s, age's %d, secret's %s", $this->name, $this->age, $this->secret); } } class student extends person { public function sayMyInfo2() { printf("my name's %s, age's %d, secret's %s", $this->name, $this->age, $this->secret); } } $p = new person('炎帝', 32, '尝百草'); echo $p->name; //炎帝 echo $p->age; //fatal错误 不能访问私有属性 echo $p->secret; //fatal错误 不能访问私有属性 $p->sayMyInfo1(); //my name's 炎帝, age's 32, secret's 尝百草 echo "<hr />"; $s = new student('lightWay', 23, '大明湖畔'); echo $s->name; //lightWay echo $s->age; //fatal错误 不能访问私有属性 echo $s->secret; //notice错误 没有定义 $s->sayMyInfo2(); //my name's lightWay, age's 23, secret's ### 这里会产生一个notice级别错误 没有定义 ###
相关文章推荐
- PHP访问修饰符public , private ,protected 访问权限实例详解
- PHP面向对象——访问修饰符
- PHP面向对象——访问修饰符
- php的学习笔记之面向对象(五)访问修饰符
- PHP面向对象–访问修饰符介绍
- php 面向对象public private protected 访问修饰符
- java 关于初学面向对象的问题三:访问权限等修饰符
- PHP面向对象——访问修饰符介绍
- PHP面向对象——访问修饰符介绍
- php面向对象(OOP)—访问修饰符
- 浅析php面向对象public private protected 访问修饰符
- PHP面向对象——访问修饰符介绍
- PHP面向对象——访问修饰符
- java 修饰符和访问权限介绍
- 再谈C#里4个访问权限修饰符
- 关于Java访问修饰符、访问权限的问题
- 再谈C#里4个访问权限修饰符
- Java访问权限修饰符friendly----同一个包内其它类可以访问(钦波总结大全)(转http://huiqinbo.javaeye.com/blog/577956)
- 一个C#的问卷!private、 protected、 public、 internal 修饰符的访问权限
- java 修饰符和访问权限介绍01