面向对象实例二

mac2022-06-30  93

class Baby():   country = 'China' #类变量,公共的变量,每个实例都可以用   def my(self):     self.name = '牛寒阳'   def cry(self):#实例方法     print('哇哇哇')

  @property #属性方法,加上后,后置的函数在后面调用不加()时,相当于它里面的返回值,可直接print;注:只能在函数没有参数的情况下   def hhh(self):     return 198

  @classmethod   def xm(cls): #cls代表的就是baby;不用实例化就可以调用     print(cls.country)     print('我是类方法')

  @staticmethod #静态方法就是一个普通函数,只不过是写在类里面而已,它用不了类变量、类方法、实例变量、实例方法;静态方法的调用:Baby.xh()   def xh():     print('这个是静态方法,它和一个没写在类里面的函数一样')

#1、不实例化,直接用类名调用这个xm的方法#2、实例化之后,在通过实例化之后的对象调用xm方法,看看可以不# 你不想实例化的时候,就可以定义成类方法# 静态方法就是一个普通函数,只不过是写在类里面而已,它用不了类变量、类方法、实例变量、实例方法# 静态方法的调用:Baby.xh()

 

# Baby.country='USA' #类变量是可以直接通过类名.xxx来进行修改的。## dcg = Baby()# # dcg.country = 'Japan'# print(dcg.country)# yjt = Baby()# print(yjt.country)

# b = Baby()# print(b.hhh)

# dcg = Baby('春光')# print('董春光的内存的',id(dcg))# zll = Baby('张流量')# print('董春光的内存的',id(zll))

转载于:https://www.cnblogs.com/lynn-chen/p/9088694.html

最新回复(0)