当前位置: 首页 > news >正文

深圳坂田网站建设/软文发布平台媒体

深圳坂田网站建设,软文发布平台媒体,遂溪网站开发公司,做网站哪里最好类型的访问修饰符允许开发人员对类成员的访问进行限制,这是PHP5的新特性,但却是OOP语言的一个好的特性。而且大多数OOP语言都已支持此特性。PHP5支持如下3种访问修饰符 public (公有的、默认的),private (私有的)和protected (受保护的)三种.…

类型的访问修饰符允许开发人员对类成员的访问进行限制,这是PHP5的新特性,但却是OOP语言的一个好的特性。而且大多数OOP语言都已支持此特性。PHP5支持如下3种访问修饰符
public (公有的、默认的),private (私有的)和protected (受保护的)三种.

public 公有修饰符,类中的成员将没有访问限制,所有的外部成员都可以访问(读和写)这个类成员(包括成员属性和成员方法),在PHP5之前的所有版本中,PHP 中类的成员都是public的, 而且在PHP5中如果类的成员没有指定成员访问修饰符,将被视为public 。例:public $name;
public function say(){};

private 私有修改符,被定义为private的成员,对于同一个类里的所有成员是可见的,即是没有访问限制;但对于该类的外部代码是不允许改变甚至读操作,对于该 类的子类,也不能访问private修饰的成员。例: private $var1 = ‘A’; //属性 private function getValue(){} //函数
protected保护成员修饰符,被修饰为protected的成员不能被该类的外部代码访问。但是对于该类的子类有访问权限,可以进行属性、方法的读及写操作,该子类的外部代码包括其的子类都不具有访问其属性和方法的权限。
例: protected $name;
protected function say(){};

private

protected

public

同一个类中

类的子类中

所有的外部成员

<?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; // Works echo $obj->protected; // Fatal Error echo $obj->private; // Fatal Error $obj->printHello(); // Shows Public, Protected and Private /** * Define MyClass2 */ class MyClass2 extends MyClass { // We can redeclare the public and protected method, but not private protected $protected = 'Protected2'; function printHello() { echo $this->public; echo $this->protected; echo $this->private; } } $obj2 = new MyClass2(); echo $obj->public; // Works echo $obj2->private; // Undefined echo $obj2->protected; // Fatal Error $obj2->printHello(); // Shows Public, Protected2, not Private ?> <?php /** * Define MyClass */ class MyClass { // Contructors must be public public function __construct() { } // Declare a public method public function MyPublic() { } // Declare a protected method protected function MyProtected() { } // Declare a private method private function MyPrivate() { } // This is public function Foo() { $this->MyPublic(); $this->MyProtected(); $this->MyPrivate(); } } $myclass = new MyClass; $myclass->MyPublic(); // Works $myclass->MyProtected(); // Fatal Error $myclass->MyPrivate(); // Fatal Error $myclass->Foo(); // Public, Protected and Private work /** * Define MyClass2 */ class MyClass2 extends MyClass { // This is public function Foo2() { $this->MyPublic(); $this->MyProtected(); $this->MyPrivate(); // Fatal Error } } $myclass2 = new MyClass2; $myclass2->MyPublic(); // Works $myclass2->Foo2(); // Public and Protected work, not Private ?>

另外在子类覆盖父类的方法时也要注意一点,子类中方法的访问权限一定不能低于父类被覆盖方法的访问权限,也就是一定要高于或等于父类方法的访问权限。
例如,如果父类方法的访问权限是protected那么子类中要覆盖的权限就要是protected和public,如果父类的方法是public那么子类中要覆盖的方法只能也是public,总之子类中的方法总是要高于或等于父类被覆盖方法的访问权限。

http://www.jmfq.cn/news/5004379.html

相关文章:

  • 鲁山网站建设兼职/网络营销的主要传播渠道是
  • 在线做行测的网站/在线磁力搜索引擎
  • 网站建设加盟哪个好/北京谷歌seo公司
  • 企业网站建设与优化/网页在线客服免费版
  • 设计师每天都上的网站/国内产女装一线二线品牌知乎
  • 做杀人任务的网站/商丘网络推广外包
  • 郑州的网站建设公司哪家好/外链群发平台
  • 哪个网站域名更新快/外链
  • 广元网站建设优化/seo优化要做什么
  • 食品企业网站建设策划方案书/品牌营销推广要怎么做
  • 怎样做网站的关键词/seo网站平台
  • 自己做的网站图片打开慢/网络营销学院
  • 网站开发 大学专业/营销型网站建设
  • 动态网页用什么语言编写/北京优化网站推广
  • 企业建立网站的目的/百度指数搜索热度排行
  • 西充移动网站建设/网页设计制作网站html代码大全
  • 网络推广网站/网站优化方式有哪些
  • php网站开发百度百科/优化 英语
  • 如何快速制作一个网站/长沙谷歌seo收费
  • 枣庄网站制作公司/seo com
  • 帮老板做网站/网络营销的营销策略
  • 医院网站建设招标/哪些网站可以免费推广
  • 用动物做网站名称/seo的内容有哪些
  • 如何给网站做第三方流量监测/厦门关键词排名推广
  • 平面设计师常用的素材网站/合肥网站seo整站优化
  • 交互型网站难做吗/学电脑培训班多少一个月
  • 做企业网站怎么收费的/日本今日新闻头条
  • 江苏润通市政建设工程有限公司网站/新乡网站seo
  • 工信部icp备案是什么意思/windows优化大师是电脑自带的吗
  • 做网站的公司高创/域名解析ip地址