定义:

class Dog():

    def __init__(self,name,age,color = "black"):#color = "black",给属性指定默认值

        self.name = name

        self.age = age

        self.color = color

        self.weight = 10#给属性指定默认值,这个默认值只能在创建了实例之后,通过 实例.weight=xx来修改

    def sit(self):

        print(self.name.title()+"is now sotting!")

约定:首字母大写的名称指的是类。

1、方法:__init__()

    类中的函数被称为方法。

    __init__()是一个特殊的方法(“构造器”、“构造方法”),每当创造新实例时,都会先自动运行这个方法。

2、self:self是一个指向实例本身的引用,让实例能够访问类中的属性和方法。以self为前缀的变量都可供类中的所有方法使用,我们还可以通过类的任何实例访问这些变量。self.name =name获取存储在形参name中的值,并将其存储到变量name中,然后该变量被关联到当前创建的实例。

3、def sit(self):定义时添加指向实例本身的引用(self),让sit()中能够访问实例变量(以self.开头的变量)

继承:

class Dog():

    def __init__(self,name,age,color = "black"):

    #color = "black",给属性指定默认值

    self.name = name

    self.age = age

    self.color = color

    self.weight = 10

    def sit(self):

        print(self.name+"is sitting!")

class Corgi(Dog):

    """docstring for Corgi"""

    def __init__(self, name, age ,size,color = 'yellow'):

        super(Corgi, self).__init__(name, age ,color)#调用父类方法,将子类的参数传递给父类的__init__方法

        self.size = size

big_hammer = Corgi('dachui',8,20)

big_hammer.sit()

print(big_hammer.color)

print(big_hammer.weight)

print(big_hammer.size)

1、子类的方法__init__():

    创建子类的是咧时,python首先需要完成的任务时给父类的所有属性赋值。为此,子类的方法__init__()需要向父类施以援手: super(Corgi, self).__init__(name, age ,color)

2、super():一个特殊函数,帮助python将父类和子类关联起来。让python调用子类的父类的方法__init__(),让子类的实例包含父类的所有属性。原理:调用父类方法,将子类的参数传递给父类的__init__方法

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容