class Animal(object):
mao = 'mao' #靜態字段 --》》屬於類
#在__init__ 方法中的屬於動態字段 --->>屬於對象 相當於構造函數
def __init__(self, name, age, sex, feet):
self.name = name
self.age = age
#定義一個私有字段
self.__sex = sex
self.__feet = feet
#動態方法
def sport_meet(self):
print self.name + 'run....'
def FwSex(self):
print "訪問私有字段"+self.__sex
#靜態方法
@staticmethod
def Foo():
print 'fly...'
#把方法訪問的形式變成字段訪問的形式
@property
def voice(self):
print self.name+"voice..."
return 'voice' #用property一般都帶返回值
#定義一個私有方法
def __PrivateMethod(self):
print 'privateMethod....'
#本身共有方法,可以訪問私有方法
def PublicMethod(self):
self.__PrivateMethod()
@property #只讀
def Feet(self):
return self.__feet
@Feet.setter #只寫
def Feet(self, feet):
self.__feet = feet
animal = Animal('天氣', 34, '__sex','1111')
# print animal.name
# print Animal.Foo()
# print animal.voice
#
# # print animal.__sex #訪問報錯(Animal instance has no attribute '__sex')
# print animal.FwSex()
#
# animal.__PrivateMethod() #訪問不了私有方法報錯(Animal instance has no attribute '__PrivateMethod')
print animal.Feet
animal.Feet = '12222'
print animal.Feet
python基礎-----面向對象編程
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.