1. 程式人生 > >24課 類的成員之字段內容梳理

24課 類的成員之字段內容梳理

con trac 打印 n) name 需要 error eba 類的成員

類成員:

字段:
- 普通字段,保存在對象中,執行只能通過對象訪問
- 靜態字段,保存在類中, 可以通過對象訪問,也可以通過類名.字段訪問

方法:
- 普通方法,
- 類方法

class province:
#靜態字段,屬於類。當有多個需要調用此類時。只會創建一份。減少內存浪費。
conuntry = ‘china‘
def __init__(self,name):
#普通字段,屬於對象
self.name = name
# self.conuntry = ‘china‘
henan = province(‘china‘)
#這裏需要用print去打印出來,henan現在為對象,而對象存儲在內存中
print(henan)
print(henan.conuntry)
#以下通過類去調用 普通字段是驗證會報錯的
# print(province.name)
# C:\Python34\python.exe "C:/全棧/day24-python 全棧開發-基礎篇/class_test.py"
# Traceback (most recent call last):
# <__main__.province object at 0x0000000004F174A8>
# File "C:/全棧/day24-python 全棧開發-基礎篇/class_test.py", line 146, in <module>
# china
# print(province.name)
# AttributeError: type object ‘province‘ has no attribute ‘name‘
#可通過此法修改
henan.name = ‘henan nan‘

"""
class Foo:
#普通方法
def bar(self):
print(‘bar‘)
#靜態方法,並且self不是必須的,也不必通過對象調用。
@staticmethod
def sta():
print(‘sta‘)

@staticmethod
def stat(a1,b1):
print(a1,b1)
#類方法,參數默認把self寫成cls,會自動傳入類名。在調用時不用輸入obj=Foo.classmd()
@classmethod
def classmd(cls):
#print(cls)會輸出<class ‘__main__.Foo‘>
print(cls)
print(‘classmd‘)

24課 類的成員之字段內容梳理