面向對象中的繼承、封裝、構造與析構函數
構造函數:是一種特殊的方法。主要用來在創建對象時初始化對象,即為對象成員變量賦值初始值,總與new運算符一起使用在創建對象的 語句中。兩根下劃線開頭,construct
作用:為對象成員變量賦值初始值
類的構造方法,是一個魔術方法
* 自動的被調用(可以被內部進行使用並調用)
* 不用申明,相當於默認一個沒有任何執行語句的構造函數
* 會自動返回一個當前類的對象
* 一個類中有且只有一個構造函數
* 構造函數可以帶參數,通常是給類的函數用來初始化賦值
析構函數:與構造函數相反,當對象結束其生命周期時(例如對象所在的函數已經調用完畢),系統自動執行析構函數。
作用:在函數執行完以後釋放內存
析構函數是與構造函數作用相反的函數
* 在垃圾對象被收回時執行
* 由系統自動調用
* 析構函數不能夠帶參數
繼承:
使用繼承,關鍵字 extends
* 默認父類中的屬性和行為都被子類繼承下來,可以不用再次去聲明了
* 繼承可以大大的減少我們的代碼中的重復
* 繼承只能有且也只有一個父類,單繼承
* 構造函數也能被繼承,當然它會被子類的構造函數給覆蓋
父類也稱超類
封裝概念:即是隱藏。把對象的屬性和行為結合成一個相同的單位,並盡可能隱藏對象的內部細節
優點:信息隱蔽,封裝既是隱藏
封裝的原則在軟件上的反應:要求對象以外的部分不能存取對象內部數據(屬性)
類的封裝屬性帶來的優點:隱藏一個累的實現細節
目的:隱藏一個累的實現細節
防止對封裝數據事務未經授權的訪問
有利於保證數據的完整性
面向對象中的繼承、封裝、構造與析構函數