1、实例方法/对象方法
实例方法,或对象方法,是指我们在一个类中定义的普通方法。
只有在对象实例化后才能使用的方法。方法的第一个参数必须是对象本身。
2、静态方法
(1).:在方法上方加@
(2).参数:静态方法可以有参数也可以没有参数
(3)。应用场景:一般用于与类对象和实例对象无关的代码。
(4).用法:类名.类方法名(或对象名.类方法名)。
定义一个静态方法
class Game: @staticmethod def menu(): print('------') print('开始[1]') print('暂停[2]') print('退出[3]') Game.menu()
3、类方法
可以直接通过类调用的方法懒猫注册机使用方法艺术心形笔刷下载,不需要实例化,但是方法的第一个参数必须是类本身
(1).在方法上方添加@
(2)。方法的参数是cls或者其他名字复古直线花纹笔刷下载,但一般默认为cls
(3).cls 指向类对象
(5)。应用场景:方法中只涉及静态属性时可以使用类方法(类方法用于修改类属性)。
(5).use可以是对象名.类方法名.或者类名.类方法名
class Person: type = '人类' @classmethod def test(cls): print(cls.type) Person.test()
示例:使用类方法统一打折商品
class Goods: __discount = 1 def __init__(self, name, price): self.name = name self.price = price @classmethod def change_discount(cls, new_discount): cls.__discount = new_discount @property def finally_price(self): return self.price * self.__discount banana = Goods('香蕉', 10) apple = Goods('苹果', 16) Goods.change_discount(0.8) print(banana.finally_price) print(apple.finally_price) Goods.change_discount(0.5) print(banana.finally_price) print(apple.finally_price)
输出是:
8.0
12.8
5.0
8.0
以上就是小编介绍的实例方法、类方法和静态方法的详细解释和整合。我希望它对你有帮助。如有任何问题懒猫注册机使用方法,请给我留言装饰笔刷下载,小编会及时回复您。非常感谢您对网站的支持!
发表评论