网站首页  词典首页

请输入您要查询的论文:

 

标题 PHP中的访问控制修饰符
范文

    温振宏

    【摘要】 PHP的面向对象中,针对类的成员属性和成员方法有三种访问控制修饰符,分别为public,protected 和private。三种访问控制修饰符支持的访问范围是不同的。本文详细的介绍了public,protected及private修饰类中成员时是如何访问的。

    【关键词】 面向对象 修饰符 public protected private

    PHP是一种简单的,面向对象的,免费开源的Web开发语言。PHP语音具有开发周期短,安全稳定,简单易学,良好的跨平台等特性。因此,PHP入选全球五大最受欢迎的编程语言。

    封装,继承和多态是面向对象语言的三大特性。PHP的封装特性支持三种访问控制修饰符:public公共的,protected受保护的及private私有的。三种修饰符均是用来修饰PHP类中成员属性和成员方法的。

    三种访问控制修饰符的访问权限对照表如下:

    一、修饰符public

    修饰符public修饰类中成员,访问没有任何限制。即类内部的成员可以访问;类外部的成员可以访问;子类也可以访问。如果成员没有指定访问控制修饰符,将被视为public。

    class A{

    public $pro1 = “public修饰的成员属性”;

    function printInfo(){echo $this->pro1;echo “视为public修饰的成员方法”;}}

    $a1 = new A();echo $a1->$pro1; $a1->printInfo();

    语句echo $a1->$pro1是通过类A的对象$a1访问类中属性public修饰的属性$pro1。语句$a1->printinfo()是通过类A的对象$a1访问类中方法printInfo()。语句echo $this->pro1是在类A的内部访问public修饰的属性$pro1。

    class B extends A{function getA(){echo parent::$pro1; parent::printInfo();}}

    $b1 = new B();$b1->getA();

    声明子类B继承类A,子类B中getA()方法访问父类A中的public修饰的$pro1成员属性及printInfo()成员方法。

    二、 修饰符protected

    修饰类protected修饰类中成员,不能被该类的外部成员访问。但该类内部可以访问;该类的子类也可以访问。

    class A{

    protected $pro2=”protected修饰的成员属性”;

    $b2->getPro2();方法setPro2()在类A的内部为protected修饰的属性$pro2赋值。方法getPro2()是在子类B中访问父类A中的protected修饰的属性$pro2。

    三、修饰符private

    修饰符private修饰类中成员,不允许该类的外部成员访问,也不允许该类的子类访问。只能允许该类内部的成员访问。

    方法getPro3()在类A的内部访问private修饰的属性$pro3。

    综上所述,PHP中三种访问控制修饰符public,protected及private的访问控制权限由高到低。修饰符private修饰的成员属性或成员方法访问权限是最低的。实际操作中,我们也是将类中的成员属性全部用private修饰符进行修饰,然后通过construct()方法对成员属性赋值,仅提供公共接口与外部联系。

    参 考 文 献

    [1] 高洛峰,LAMP兄弟连主编, 《细说PHP2》, 电子工业出版社第1版2013.6,.

    [2] 孔祥盛主编《PHP编程基础与实例教程》, 人民邮电出版社第1版2011.8.

随便看

 

科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。

 

Copyright © 2004-2023 puapp.net All Rights Reserved
更新时间:2025/2/11 0:22:59