




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、場景: 記錄學(xué)生的數(shù)量!當(dāng)有學(xué)生類,每個學(xué)生類對象,就是一個學(xué)生實例化一次,多出來一個學(xué)生,銷毀一次就少一個學(xué)生定義一個計數(shù)器,構(gòu)造方法中數(shù)量+1 ,析構(gòu)數(shù)量j如何定義計數(shù)器?不能直接用屬于對象的屬性,每個對象所獨有的!顯然,應(yīng)該找一個對象所共有的數(shù)據(jù)。構(gòu)造方法靜態(tài)局部變量,也是不行!原因是析構(gòu)不能用顯然,應(yīng)該找一個對象并且能夠在多個方法內(nèi)使用的變量使用全局變量即可,在方法內(nèi),是可以通過$globals訪問到全局變量class student public $name;/public $count = 0;public function _construct() $globals'co
2、unt' + +;public function _distruct() $globals'count'-;$count = 0;$sl = new student;$s2 = new student;echo $count,'<br/>'un set($s2);$s3 = new student;echo $count;此時,站在業(yè)務(wù)邏輯的角度分析下,是否合理全局變量不應(yīng)該屬于任何的對象或者類。$count與student沒有絲毫的邏輯聯(lián)系顯然,應(yīng)該找一個能夠被對象所共有并且能夠在多個方法內(nèi)使用的變量,還應(yīng)該找一個與妝肖的對
3、象類 有邏輯關(guān)系的數(shù)據(jù):可以使用類的靜態(tài)成員class student間明x $nam<?八訓(xùn)h scount$count “1,object! st udent|j £耐陀二 nuix$count-0分成靜態(tài)屬性和靜態(tài)方法保存數(shù)據(jù)的是靜態(tài)屬性,執(zhí)行功能的是靜態(tài)方法語法:聲明:額外增加一個static關(guān)鍵字 public static function fl() public static $stu_count = 0;訪問->訪問對象成員,對象訪問符 因此,應(yīng)該使用類訪問 訪問語法:類:成員:稱之為靜態(tài)訪問符,類訪問符(范圍解析操作符) 在構(gòu)造方法中,訪問到,+
4、 +public function _construct() stude nt:$stu_count+ +;因此,此場景的完整代碼為:class student 類的靜態(tài)成員類的靜態(tài)成員指的是邏輯上被所有的對象所共享,屬于類的成員稱之為類的靜態(tài)成員object(student) $name 7 null f public $name;public static $stu_count = 0;public function _construct() stude nt:$stu_co unt+ +;public function _destruct() stude nt:$stu_co un t;
5、$sl = new student;$s2 = new student;echo student:$stu_count;echo '<hr />'un set($s2);echo student:$stu_count; echo ,<hr/>*;$s3 = new student; echo student:$stu_count;輸出的結(jié)果為:2 1 2類似于$this同樣存在一個selft關(guān)鍵字(注意沒有$ ),在類中,代表當(dāng)前類$this這個對象self 類自己 self:因此上面的代碼可以寫成如下:class stu
6、dent public $name;public static $stu_count = 0;public function _construct() self:$stu_co un t+;public function _destruct() self:$stu_co unt;public static function fl() $sl = new student;$s2 = new student;echo student:$stu_count;echo *<hr/>un set($s2);echo student:$stu_count;echo *&
7、lt;hr />'$s3 = new student;echo student:$stu_count;靜態(tài)的使用問題1:訪問上,靜態(tài)成員只能使用:靜態(tài)靜態(tài)訪問符號訪問 典型的,:前應(yīng)該是類,類內(nèi)可以使用self 但是,php支持:對象:靜態(tài)成員這種寫法 上面的代碼中最后一行也可以寫成:echo $s3:$stu_count 但這種寫盡量不要這么寫非靜態(tài)方法 靜態(tài)方法2:訪問上,靜態(tài)成員使用類訪問,而非靜態(tài)成員使用對象訪問 但是,問題岀現(xiàn)在方法上測試一: .靜態(tài)方法student: :static_func();strict standards non-static met
8、hod studestudent: non _static_ftuic();.測試二:使用對象訪問靜態(tài)與非靜態(tài)/students :static_func();/student: :non_static_fuiicjo: $o = new student;$o->non_static_fiinc();$o-> static_fuiic();結(jié)論:無論是靜態(tài)方法,還是非靜態(tài)方法,都可以使用對象來訪問,那么靜態(tài)與非靜態(tài)方法的意義在 哪里?該現(xiàn)象的原因:方法是可執(zhí)行性代碼的集合,針對多個對象都是一致的class student八 $namestmk func. func區(qū)別在哪: 在于$this的使用上 只有在使用對象調(diào)用非靜態(tài)方法時,才可以使用$this 靜態(tài)方法,無論如何也不能對$this做處理 而非靜態(tài)方法,只有確走了對象,才能確定$this的值 面試題:在使用類調(diào)用對象方法時應(yīng)該注意什么問題?類常量在類內(nèi)定義,屬于類的常量使用關(guān)鍵字,const聲
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年五單元測試題及答案
- 個人工廠合同范例
- 中介服務(wù)合同范例
- 入股合同范例合伙協(xié)議范例
- 供石料合同范例
- 公司電器 合同范例
- bto模式合同范例
- 中介代賣合同范例
- 保險咨詢合同范例
- 業(yè)主入住合同范例
- 2023年湖北省生態(tài)環(huán)保有限公司招聘筆試真題
- 2023年新疆事業(yè)單位開展招聘考試真題
- 學(xué)校班主任談心制度實施方案
- CRISPR-Cas9-基因編輯技術(shù)簡介
- 質(zhì)量互變規(guī)律、否定之否定規(guī)律
- 小學(xué)語文六年級下冊單元作文評價表:讓真情自然流露
- 2024魚塘租賃合同模板
- 小學(xué)數(shù)學(xué)教學(xué)中數(shù)學(xué)文化的滲透與傳承
- 你比劃我猜題目大全555個
- 《8 家庭養(yǎng)雞》(教案)-2023-2024學(xué)年六年級下冊綜合實踐活動皖教版
- 小學(xué)百科知識題庫大全
評論
0/150
提交評論