python-類封裝
阿新 • • 發佈:2021-01-14
技術標籤:python
Python的類封裝
在裡面直接寫姓名發現不靈活,故出現傳參的方法,如下:
class Person():
nation="中國" #公有
def __init__(self, a,b):
# 給物件空間封裝屬性
self.name = a # self就是物件本身p. 私有
self.sex=b
p = Person("小Q","None") # 傳實參給a,此時a就是小Q,b就是None
p1=Person("小S" ,"男")
print(p.nation)
print(p1.nation)
print(p.name,p.sex)
print(p1.name,p1.sex)
總結:__init__裡的變數是私有的,__init__外的nation變數就是公有的。
第二種:class的類變數的私有
class Person():
nation="中國" #公有
__a=10 #在變數前加__即可變為私有,私有
def __init__(self, a,b):
print(Person.__a) #呼叫私有變數__a
# 給物件空間封裝屬性
self.name = a # self就是物件本身p. 全部私有
self.sex=b
p = Person(“小Q”,“None”) # 傳實參給a,此時a就是小Q,b就是None
p1=Person(“小S”,“男”)
#print(Person.__a) 在外面呼叫不出Person的私有變數只能在__init_中呼叫