1. 程式人生 > >面向對象中的繼承、封裝、構造與析構函數

面向對象中的繼承、封裝、構造與析構函數

再次 釋放內存 創建 訪問 完整性 struct 事務 完整 參數

構造函數:是一種特殊的方法。主要用來在創建對象時初始化對象,即為對象成員變量賦值初始值,總與new運算符一起使用在創建對象的 語句中。兩根下劃線開頭,construct
作用:為對象成員變量賦值初始值

類的構造方法,是一個魔術方法
* 自動的被調用(可以被內部進行使用並調用)
* 不用申明,相當於默認一個沒有任何執行語句的構造函數
* 會自動返回一個當前類的對象
* 一個類中有且只有一個構造函數
* 構造函數可以帶參數,通常是給類的函數用來初始化賦值


析構函數:與構造函數相反,當對象結束其生命周期時(例如對象所在的函數已經調用完畢),系統自動執行析構函數。
作用:在函數執行完以後釋放內存

析構函數是與構造函數作用相反的函數
* 在垃圾對象被收回時執行
* 由系統自動調用
* 析構函數不能夠帶參數

繼承:

使用繼承,關鍵字 extends
* 默認父類中的屬性和行為都被子類繼承下來,可以不用再次去聲明了
* 繼承可以大大的減少我們的代碼中的重復
* 繼承只能有且也只有一個父類,單繼承
* 構造函數也能被繼承,當然它會被子類的構造函數給覆蓋
父類也稱超類

封裝概念:即是隱藏。把對象的屬性和行為結合成一個相同的單位,並盡可能隱藏對象的內部細節
優點:信息隱蔽,封裝既是隱藏
封裝的原則在軟件上的反應:要求對象以外的部分不能存取對象內部數據(屬性)
類的封裝屬性帶來的優點:隱藏一個累的實現細節
目的:隱藏一個累的實現細節
防止對封裝數據事務未經授權的訪問
有利於保證數據的完整性

面向對象中的繼承、封裝、構造與析構函數