zoukankan      html  css  js  c++  java
  • 2、利用继承减少代码冗余

    继承解决的是类与类之间的代码冗余问题,一定是一个类是另外一个类的子类

    继承关系的查找

    总结对象之间的相似之处得到类,总结类与类之间的相似之处就得到了类们的父类

    '''
    
    
    class OldboyPeople:
        school='Oldboy'
    
    
    class OldboyStudent(OldboyPeople):
    
        def __init__(self,name,age,sex):
            self.name=name
            self.age=age
            self.sex=sex
            self.score=0
    
        def choose_course(self):
            print('%s is choosing course' %self.name)
    
    
    
    class OldboyTeacher(OldboyPeople):
    
        def __init__(self,name,age,sex,level):
            self.name=name
            self.age=age
            self.sex=sex
            self.level=level
    
        def score(self,stu,num):
            stu.score=num
    '''
    
    
    

    问题:如何在子类派生出的新方法中重用父类的功能

    class OldboyPeople:
        school='Oldboy'
    
        def __init__(self, name, age, sex):
            self.name = name
            self.age = age
            self.sex = sex
    
    
    class OldboyStudent(OldboyPeople):
    
        def __init__(self,name,age,sex):
            self.name=name
            self.age=age
            self.sex=sex
            self.score=0
    
        def choose_course(self):
            print('%s is choosing course' %self.name)
    
    
    
    class OldboyTeacher(OldboyPeople):
    
        # def __init__(self,name,age,sex,level):
        #     self.name=name
        #     self.age=age
        #     self.sex=sex
        #     self.level=level
    
        def score(self,stu,num):
            stu.score=num
    
    
    stu1=OldboyStudent('李特丹',18,'female') #OldboyPeople.__init__(stu1,'李特丹',18,'female')
    print(stu1.__dict__)
    
    tea1=OldboyTeacher('egon',18,'male') ##OldboyPeople.__init__(tea1,'egon',18,'male',10)
    print(tea1.__dict__)
  • 相关阅读:
    【Beta版本】冲刺-Day6
    【Beta版本】冲刺-Day5
    【Beta版本】冲刺-Day4
    【Beta版本】冲刺-Day3
    【Beta版本】冲刺-Day2
    【Beta版本】冲刺-Day1
    内存管理和虚拟内存
    C++11中的智能指针和锁的类型以及它们背后的RAII机制
    操作系统中面试时问到的相关知识点
    网络层(IP)相关知识
  • 原文地址:https://www.cnblogs.com/z-x-y/p/10046770.html
Copyright © 2011-2022 走看看