day_25 面向对象

Posted augustyang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了day_25 面向对象相关的知识,希望对你有一定的参考价值。

"""
特性   property
类方法   classmethed
静态方法 staticmethed
"""

property

封装逻辑,让调用者感受不到逻辑

class Room(object):
    #property    特性
    def __init__(self,name,owner,width,length,heigh):
        self.name = name
        self.owner=owner
        self.width = width
        self.length = length
        self.heigh = heigh

    def cal_area(self):
        print(self.width*self.length)

    @property
    def cal_areaw(self):
        return self.width*self.length


n1 = Room(‘yy‘,‘wc‘,10,10,10)

n1.cal_area()
print (n1.cal_areaw)  #100
print(n1.name)        #yy


classmethed
class Room(object):
    #类方法
    tag = 1
    def __init__(self,name,owner,width,length,heigh):
        self.name = name
        self.owner=owner
        self.width = width
        self.length = length
        self.heigh = heigh

    def cal_area(self):
        print(self.width*self.length)

    @classmethod
    def tell_info(cls):             #cls 是   类名
        print(cls)
        print(cls.tag)


# n1 = Room(‘yy‘,‘wc‘,10,10,10)
Room.tell_info()
# 结果
#  <class ‘__main__.Room‘>
#  1

  

 

 

 

 

 

 

 

以上是关于day_25 面向对象的主要内容,如果未能解决你的问题,请参考以下文章

目录大纲

python 学习 [day7]面向对象

day07_雷神_面向对象进阶

Day08_面向对象第三天

Day5—面向对象

day9_面向对象编程