PHP类的变量与成员,及其继承、访问与重写要注意的问题

PHP类的变量与成员,及其继承、访问与重写要注意的问题

ID:38583671

大小:56.50 KB

页数:7页

时间:2019-06-15

PHP类的变量与成员,及其继承、访问与重写要注意的问题_第1页
PHP类的变量与成员,及其继承、访问与重写要注意的问题_第2页
PHP类的变量与成员,及其继承、访问与重写要注意的问题_第3页
PHP类的变量与成员,及其继承、访问与重写要注意的问题_第4页
PHP类的变量与成员,及其继承、访问与重写要注意的问题_第5页
资源描述:

《PHP类的变量与成员,及其继承、访问与重写要注意的问题》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、PHP的类及其实例:类的成员属性(属性的称呼相对于‘方法’而言)包括类常量和类变量,其中类常量在定义时不可为空,类的属性在定义时如果被赋值,只能使用变量和数组,并且不能是表达式,因为类属性在编译期被初始化,PHP在编译器不执行表达式。1、成员的访问控制public:可以继承,可以在类的方法之外被访问,如$obj->prop;protected:可以继承,不可以在类的方法之外被访问;privat

2、e:不可以继承,不可以在类的方法之外访问;PHP4使用var来声明类的属性,在PHP5之后不再使用,PHP5.3之前使用被警告,在PHP5.3之后可以在public之前或单独使用作为public的别名。这三个访问控制关键字也可以修饰构造函数,当private和protected修饰类的构造函数时,只能通过一个publicstatic的静态方法调用构造函数以实例化对象,因为该构造函数无法在类之外被访问了,比如,单例类的实现:

3、ce=null;public$k=88;privatefunction__construct(){}publicstaticfunctiongetInstance(){if(self::$instance==null){//self::$instance=newSingleton();self::$instance=newself();}returnself::$instance;}publicfunction__clone(){thrownewException('Singletonclasscan

4、notbecloned');returnself::$instance;}}//$in=newSingleton();$in=Singleton::getInstance();var_dump($in);?>1、继承禁止:final关键字,仅用于修饰类或类的方法如果一个类被final修饰,这个类不能被继承,如果一个方法被final修饰,则这个方法不能被子类重写(override)。

5、thodA(){return'thisisafinalmethod';}}?>2、抽象类和抽象方法,abstract仅用于类和方法,抽象类不能直接用于实例化对象,只能用于产生子类4、类的常量及其访问:类的常量不能使用访问控制修饰符,他是public的,可继承,可以被子类重写。访问类的常量必须使用双冒号::,可以使用类名或类的

6、实例(对象)来访问,因为是常量,所以名称不能使用表示变量的符号$。getConst();echoMyclass::X;?>类的常量是

7、一个值,在代码编译器常量名被替换为相应的值,在运行期不可修改,因此类的常量与类本身无关,在类实例化对象之前就已经存在,因此类的常量可以直接使用类名访问。

8、tatic$k=88;publicfunctiongetPConst(){returnparent::N;}}$p=newP();$s=newS();echo$p::N.'
';//100echo$s::N.'
';//200该常量名继承自父类,在编译期就已经直接取self::M的值替换了,注意区别类的方法中使用self::Mecho$s->getPConst().'
';//100echo$s->getStatic2().'
'

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。