php oop 实际工作,PHP OOP注意点(一)
重寫(override)
當(dāng)對(duì)父類的方法進(jìn)行重寫時(shí),子類中的方法必須和父類中的對(duì)應(yīng)的方法具有相同的名稱,但在php5中不限制輸入?yún)?shù)類型,參數(shù)數(shù)量和返回值類型
子類中的覆蓋方法不能比父類中的方法具有更嚴(yán)格的訪問權(quán)限,如:如果父類的方法為protected, 那么其繼承的子類的此方法不能聲明為private
聲明方法時(shí),如果不定義訪問權(quán)限. 默認(rèn)權(quán)限為public
構(gòu)造函數(shù)的重寫
當(dāng)子類被實(shí)例化時(shí),子類的構(gòu)造函數(shù)被調(diào)用, 而父類的構(gòu)造函數(shù)沒有被調(diào)用! 如果子類中沒有聲明構(gòu)造函數(shù), 那么子類將調(diào)用父類的構(gòu)造函數(shù)! 構(gòu)造函數(shù)可以被繼承.
如果父類中的屬性被子類重寫, 那么父類中的private有效.而且屬性的重寫和方法的重寫一樣,子類中的屬性不能比父類中此屬性具有更嚴(yán)格的權(quán)限.
重載 overLoad
當(dāng)類中的方法名相同時(shí),稱為方法的重載(overload).重載是java等面向?qū)ο笳Z言的中重要的部分,但是PHP5不支持重載
static
static的屬性和方法只能訪問static的屬性和方法,不能訪問類中非靜態(tài)的屬性和方法.因?yàn)殪o態(tài)屬性和方法被創(chuàng)建時(shí),可能還沒有任何這個(gè)類的實(shí)例可以被調(diào)用.
static的屬性,在內(nèi)存之中只有一份,為所有實(shí)例所用.
使用self::來調(diào)用當(dāng)前類的靜態(tài)成員 靜態(tài)方法不能調(diào)用非靜態(tài)屬性, 即不能使用self::調(diào)用,也不能使用$this調(diào)用!
如果類中的非靜態(tài)方法調(diào)用了類中的靜態(tài)屬性,那么這個(gè)方法將被轉(zhuǎn)換靜態(tài)方法.
靜態(tài)方法不能使用$this調(diào)用非靜態(tài)方法.當(dāng)類中的非靜態(tài)方法被self::調(diào)用時(shí),系統(tǒng)會(huì)自動(dòng)將這個(gè)方法抓換稱為靜態(tài)方法.
使用const來聲明一個(gè)常量, 常量為定值. 一般聲明時(shí)候前面不需要$符號(hào), 且為大寫. 如 const PATH= ' var/www/ ' ; 不可以給常量賦值.
一個(gè)類中, 只要有一個(gè)抽象放方法,這個(gè)類就必須聲明為抽象類. 抽象方法在子類中必須被重寫!
總結(jié)
以上是生活随笔為你收集整理的php oop 实际工作,PHP OOP注意点(一)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php创建压缩文件 保存路径,通过php
- 下一篇: php登录注册连接数据库,利用PHP连接