Python類繼承,方法重寫及私有方法


 1 # -*- coding: utf-8 -*-
 2 """
 3 Created on Mon Nov 12 15:05:20 2018
 4 
 5 @author: zhen
 6 """
 7 
 8 class Aricraft:
 9     mileages = 0.0 # 類變量,在該類及其子類的實例中共享
10     def __init__(self, engine, speed):
11         self.engine = engine
12         self.speed = speed
13     def fly(self, miles):
14         Aricraft.mileages += miles
15         print("the aircrift has", Aricraft.mileages, "miles")
16         
17 aricraft = Aricraft("渦扇9", "800km/h")
18 aricraft.fly(1000)
19 aricraft.fly(600)
20 
21 class Fighter(Aricraft): # 繼承
22     def __missile(self): # 私有方法,只能類內訪問
23         print("emission missile !")
24         
25     def fly(self, miles):
26         Aricraft.mileages += miles
27         print("the fighter has", Aricraft.mileages, "miles")
28         Fighter.__missile(self)
29    
30 fighter = Fighter("渦扇15", "1200km/h")
31 fighter.fly(1800)
32 fighter.fly(1600)
33 # fighter.__missile()  AttributeError: 'Fighter' object has no attribute '__missile'
34     

結果:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM