16 类成员
类成员
1.实例方法
对象.方法
2.类方法
@classmethod
类名.方法
3.静态方法
@staticmethod
类名.方法
4. @property 可以把一个方法变成一个属性
1. 函数只能有一个self参数.
2. 需要有返回值
3. 不能赋值
4. 调用的时候, 我们不需要写括号. 直接当成属性变量来⽤就可以了
class Person:
country="中国"
def __init__(self,name,brithday,qq):
#实例变量. 给对象赋值
self.name=name
self.brithday=brithday
self.qq=qq
def chi(self):
print("走,吃去")
@classmethod #申明类方法
def he(cls):
print("喝饮料")
@staticmethod #申明静态方法,相当于在类中定义的一个普通函数
def shui():
print("睡")
@property #把方法变属性
def age(self):
return 2018-self.brithday
p1=Person()
Person.country="China" # 类变量的修改只能通过类名来完成
p1.email=1970664132 添加实例变量-> 字段 -> 属性(java)
p1.chi() #对象.方法
Person.he() #类名.方法 不管用对象还是用类去访问类方法. 默认传递进去的是类
Person.shui() #类名.方法
print(p1.age)
class Person: def __init__(self, name): # 构造, 创建对象的时候自动调用 self.__name = name # 私有的 print("这里是构造方法") def init(self): print("实例方法") def __chi(self): # 私有的 print("我要吃. 疯狂的吃") def he(self): self.__chi() # 内部调用 print("我是喝", self.__name) p = Person("孙艺珍") p.he() # # p.__init__() # 很蠢 # p.init() # print(p.__name)
有疑问可以加wx:18179641802,进行探讨