1.類名的首字母一般大寫,函式名的首字母一般小寫。
2.不繼承建立類後邊不加括號;繼承建立類後面加括號,括號中為父類。
3.繼承後類中不寫內容,直接呼叫pass即可;繼承後類中寫內容,不寫pass。
4.子類中定義與父類同名的方法或屬性,會自動覆蓋父類對應的方法和屬性。
5.避免4中情況有兩種方法:
(1)呼叫未繫結的父類方法:fish.init(self)。
(2)使用super函式:super().init()。
import random as r
class fish:
def __init__(self):
self.x = r.randint(0,10)
self.y = r.randint(0,10)
def move(self):
self.x -= 1
print('我的位置是:', self.x, self.y)
class goldfish(fish):
pass
class carp(fish):
pass
class salmon(fish):
pass
class shark(fish):
def __init__(self):
#fish.__init__(self) #呼叫未繫結的父類方法
super().__init__() #使用super函式
self.hungry = true
def eat(self):
if self.hungry:
print('吃貨的夢想就是天天有的吃^_^')
self.hungry = false
else:
print('太撐了,吃不下!')
python之繼承父類
import unittest class person object def age self print this is father s age def self print this is father s class student person def student self prin...
Python 類繼承方法覆蓋
是指有繼承關係的類中 子類中實現了與基類中同名的方法 在子類例項中呼叫該方法時 實際呼叫的是子類中的方法 這種現象稱作覆蓋 也就是實現與父類同名 但是功能不同的方法 可以改變父類方法的功能。定義子類mylist 繼承於list父類 class mylist list pass 例項化 l mylis...
Python如何繼承父類 init
如果在子類需要父類的構造方法就需要顯示地呼叫父類的構造方法,或者不重寫的構造方法。型別1 如果子類沒有重寫 init 子類會自動呼叫 init classf def init self,name self.name name print name self.name defgetname self ...