zoukankan      html  css  js  c++  java
  • python第四十四课——继承性之单继承

    2.继承性

    继承:

    使用场景:

    1).生活层面:。。。

    2).计算机层面:

    两部分组成,一部分我们称为父类(基类、超类、superclass),另一部分我们称为子类(派生类、subclass),

    子类可以使用父类中的成员(使用权)

    继承性的好处:

    1).代码复用性变强

    2).代码扩展性变强

    3).代码维护性变好

    4).代码阅读性变好

    继承性弊端:

    类和类之间是一种强耦合关系

    继承的好处要远远多于弊端,所以我们还是要经常使用继承的(合理),切记不能为了继承而继承

    分析:

    继承体系可以很庞大(呈现树状结构图),

    越往上层的类,感觉越模糊,越不清晰

    越往下层的类,感觉越清晰,越具体

    所以得出结论,在之后的开发过程中创建父类的可能性变低,子类实例化的可能性极高


    演示单继承的结构和使用:
    父类:Person
    子类:Teacher
    class Person:
        def __init__(self,name,age):
            print('我是Person类的构造...')
            self.name=name
            self.age=age
    
        #吃和睡
        def eat(self):
            print('吃一个...')
    
        def sleep(self):
            print('睡一个...')

    代码:(Person),就让Teacher类和Person发生继承关系
    Person:父类
    Teacher:子类
    class Teacher(Person):
        def __init__(self,name,age,salary):
            print('我是Teacher类的构造...')
            self.salary=salary
            '''
            为了给父类Person中的name和age属性赋值,
            所以我们需要在子类构造函数中显示的调用父类构造来实现
            关键字:super
            '''
            super().__init__(name,age)
            # super(Teacher, self).__init__(name,age)
            # Person.__init__(self,name,age)
    
        #教书
        def teach(self):
            print('教书育人...')
    
    #实例化子类对象-->Teacher对象
    t=Teacher('joy',34,10000.0)
    
    #调用父类的属性
    print(t.name,t.age)
    
    #调用子类的属性
    print(t.salary)
    
    #调用父类函数
    t.eat()
    t.sleep()
    
    #调用子类的函数
    t.teach()

    返回目录
  • 相关阅读:
    javaweb毕业设计
    Maven入门----MyEclipse创建maven项目(二)
    Maven入门----介绍及环境搭建(一)
    SpringMvc入门五----文件上传
    SpringMvc入门四----rest风格Url
    SpringMvc入门三----控制器
    SpringMvc入门二----HelloWorld
    SpringMvc入门一----介绍
    分析setup/hold电气特性从D触发器内部结构角度
    33. Search in Rotated Sorted Array
  • 原文地址:https://www.cnblogs.com/hankleo/p/10460459.html
Copyright © 2011-2022 走看看