三.python面试题 类的三种方法

来源:互联网 发布:北京华宇软件 编辑:程序博客网 时间:2024/05/16 06:39
分别是类方法,静态方法,实例方法。而能让类只接调用的只有类方法,或通过一些小技巧,类也可以调用实例方法如上面例子中的调用这边顺便说明下这三中方法的区别1类方法的特点是类方法不属于任何该类的对象,只属于类本身2类的静态方法类似于全局函数,因为静态方法既没有实例方法的self参数也没有类方法的cls参数,谁都可以调用3.实例方法只属于实例,是实例化的对象才能调用
#coding:utf-8class A(object):    num=10    def __init__(self,numb):        self.numb=numb    def print2(self):        print self.num    @classmethod    def print1(cls,numb):        print cls.num     #   cls(numb).print2()     #   cls(numb).print3(numb)    @classmethod    def print4(self):        print self.num    @staticmethod    def print3(numb):        print numb#print getattr(A,'num')#A.print1('s')print '---------'#A.print4()A.print1('s')