思考:子列可以从父类进行继承,那如果子类与父类的成员重名了怎么办? 引入:首先,类中定义的成员是允许出现与其他类同名的,但是这个过程如果出现了继承,那么重名就存在重写的问题。 重写override【掌握】 定义:重写,即子类中定义了与父类重名的成员,子类可以重写父类任意类成员,通常重写是用来重写父类 ...
分类:
其他好文 时间:
2020-02-10 13:33:41
阅读次数:
59
继承 extends 子类的共性代码都是继承自父类的,每个子类只要写自己特有的代码 class 子类 extends 父类 继承提高了代码的复用性,提供了多态的前提,但是不要为了某个功能去继承 子类不是父类的子集,而是对父类的扩展 规则:子类不能直接访问父类中private的成员变量和方法 只支持单 ...
分类:
编程语言 时间:
2020-02-10 12:13:56
阅读次数:
72
类的派生、多态、抽象类、接口 1:派生-extends 派生就是继承已有类非私有的字段和方法等创建新的类,还可以添加、重写字段和方法; 在类的派生中,构造函数不可以被继承; 派生源的类-父类/基类/超类;派生的类-子类/派生类; 2:super(…)调用超类的构造函数,在子类构造函数的开头; sup ...
分类:
编程语言 时间:
2020-02-09 22:16:26
阅读次数:
79
内部类: 将一个类A定义在另一个类B里面,里面的那个类A就称为内部类,B则称为外部类。 成员内部类 成员内部类 :定义在类中方法外的类。 定义格式: class 外部类 { class 内部类{ } } 在描述事物时,若一个事物内部还包含其他事物,就可以使用内部类这种结构。比如,汽车类 Car 中包 ...
分类:
其他好文 时间:
2020-02-09 22:11:31
阅读次数:
88
1、概念 抽象类常用来作为一个类族最顶层的父类,表示类族所有事物的共性 使用abstract修饰 抽象方法: 抽象类: 抽象类不一定有抽象方法,有抽象方法的类一定是抽象类 2、抽象类的继承: 动物(A)有吃的功能,狗(B)怎么吃再具体细化(输出BBBB) 3、多态 4、final final可以修饰 ...
分类:
编程语言 时间:
2020-02-09 20:19:13
阅读次数:
90
思考:类中有三大类成员:属性,方法和类常量,还有访问修饰限定符限制,那么继承是子类可以使用父类所有成员吗? 引入:从理论上讲,继承后子类是可以访问父类的所有成员的,但实际上父类有一些成员并不希望被子列访问的,所以继承是有限的 有限继承【掌握】 定义 :有限继承,指子类在继承父类的成员的时候,并非继承 ...
分类:
其他好文 时间:
2020-02-09 18:21:42
阅读次数:
92
一、元类 python2中所有类是基于instance创建的,称为旧式类;注明继承object时,称为新式类; python3中默认均为基于object,无区别; object为所有类的基类,所有的类的继承顶层父类都是object; type为所有类的元类,print(type(类名)),输出typ ...
分类:
其他好文 时间:
2020-02-09 09:44:39
阅读次数:
50
多重继承 除了从一个父类继承外,Python允许从多个父类继承,称为多重继承。 多重继承的继承链就不是一棵树了,它像这样: class A(object): def __init__(self, a): print 'init A...' self.a = a class B(A): def __i ...
分类:
编程语言 时间:
2020-02-08 17:29:27
阅读次数:
69
更新记录 [1]2020.02.08 10:32 1.主要编辑了super 正文 我原本是在学习$super$关键字,后来突发奇想,能不能在父类中用$super$间接调用本类方法呢? 也就是说父类的方法(假设方法名为$printData$),通过子类的$super$去间接调用。 于是,就有了这样的一 ...
分类:
其他好文 时间:
2020-02-08 11:32:47
阅读次数:
70
面向对象三大特征: 封装:将数据和方法放在一个类中,构成封装 继承:子类继承父类属性和方法,可多继承 多态:一个事物有多种形态,一个抽象类有多个子类,不同的子类对象调用相同的方法,产生不同的执行结果。多态可以增加代码的灵活度。是基于类的继承。 class Animal: def run(self): ...
分类:
其他好文 时间:
2020-02-08 10:01:14
阅读次数:
71