python(十七)类中的几种函数

四种函数

Java中并没有类函数。我也不大明白类函数的作用。

私有函数公有函数静态函数类函数
属于对象属于对象属于类属于类
方法名以两个下划线开头“__”——使用 @staticmethod使用 @classmethod
可以访问类、对象成员可以访问类、对象成员不能直接访问属于对象的成员,只能访问属于类成员。不能直接访问属于对象的成员,只能访问属于类的成员。
不能通过 object. 调用,只能通过 object._className__funcName 来访问可以通过 object. 调用可以通过 object. 调用可以通过 object. 调用
——如果用 class.调用,需要显示的为该方法的 self 参数传递一个对象名,用来明确指定访问哪个对象的数据成员。可以通过 class. 调用可以通过 class. 调用
————可以不写参数(平常的必须写 self 或者 cls)一般将 cls作为类方法的第一个参数,如同 self,在调用类方法时不用为 cls 传值
class Car:
    factory = 'bwm'
    def __init__(self, name, price, speed):
        self.__name = name
        self.price = price
        self.speed = speed

    def __can(self):
        print('this is a private method')

    def say(self):
        print('hi~ i am {}'.format(self.name))

    @classmethod
    def sale(cls):
        # AttributeError: type object 'Car' has no attribute 'price'
        print('i sale for {}$'.format(cls.price))  # 虽然cls能点出price来,但运行时会报错

    @staticmethod
    def run():
        pass


c1 = Car('lala', 10000, 66)
c1.sale()
Car.sale()

object.

在这里插入图片描述

class.

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值