Python之类变量、类方法、类作为对象传入类方法中、结合讲解版本

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/cadi2011/article/details/84798391

1、 直接上个源码

class Animal(object):        
    animalName = "Animal"   #类变量,看来python中没静态变量这一说(我之前的说法不严谨)

    @classmethod           #类方法
    def print_name(self):        #self指的类作为对象传入
        return self.animalName   #调用对应类对象的animalName


class Cat(Animal):           #Cat类 ,扩展自Animal
    animalName = "Cat"


class Dog(Animal):           #Dog类 ,扩展自Animal
    animalName = "Dog"


dog = Dog()      
print dog.print_name()   #调用类方法的一种方式,使用实例对象调用,解释器会自动找到对应的类对象

print Cat.print_name()   #第二种方式,使用类调用,类直接作为对象

输出结果:

Dog
Cat

2、这就是类方法的妙用,巧妙将类对象为维度,做的多态,特别的赞

3、那这样Python中的类变量,就支持重写这一说了啊,牛批啊

猜你喜欢

转载自blog.csdn.net/cadi2011/article/details/84798391