類變量:類變量在整個實例化的對象中是通用的。類變量在類中定義,在函數體外部定義。類變量通常不用作實例變量。
壹個類有壹個特殊的方法(構造函數),名為__init__(),當類被實例化時會自動調用這個方法。
Self:self表示壹個類的實例,代表當前對象的地址,而self.class指向該類。
類調用Car.weight
實例化car01=Car(5)
實例對象調用car01.weght
當我們構造類時,Python3默認繼承object的基類。我個人理解object是壹個空類,所以不需要在括號裏寫object。這是Python3的特點。如果不在python2中寫object,默認情況下不會繼承object的基類。
同樣,我們想要繼承的父類只需要把objetc改成自己定義的類名。子類可以擁有父類中的所有公共屬性和方法,但是可以通過給變量名加下劃線來使其成為私有的,這樣子類就不能訪問父類中的成員。
下面三個總線類的父類都是總線類。我們可以編寫壹個funcs方法,這樣每次調用funcs方法時,都會傳入不同的對象來執行不同的func方法。具體實現如下:
主要功能:
大家可以看到,我實例化了壹輛汽車作為具體對象,權重為5t,壹輛公交車作為具體對象,權重為20t,三輛公交車作為具體對象,權重為15t。
如上圖所示,我每次調用funcs方法,都會傳入壹個實例化的對象,funcs根據不同的對象執行相應的內部方法。