0903work继承

一、继承的概念
1.继承的来源
(1)继承来源于生活
(2)如果不用继承,代码可能会混淆属和行为,也有可能出现代码重复的问题,以及扩展性无法提升的问题
2.继承的概述:在面向对象编程中,可以通过扩展一个已有的类,并继承该类的属性和行为,来创建一个新的类。
已有的类称为父类,而新类称为子类。父类也可以称为基类、超类,子类也可以称为派生类
3.辨别是不是继承关系:使用”is..a”关系判断
4.一个类使用关键字extends继承其它类
(1)被继承的类:父类,基类,超类
(2)不能继承父类私有的属性和行为
5.子类,派生类
(1)子类可以继承除了父类私有的属性和行为,以及构造函数之外的内容
(2)子类可以扩展新的属性,以及新的行为
(3)还可以重写父类的方法
6.优点
(1)扩展性
①子类可以扩展父类的属性和方法
②父类的属性和方法可用于子类
(2)代码的可重用性

二、java中继承的实现方式
1.当两个或多个类是不相同的,但是共享相同特征的时候,将共同的元素从类中拿出来,放到一个父类中,每个子类中又保留了不同的特征
2.一个类使用关键字extends继承其它类,但是,父类的私有属性不能继承,父类的构造函数无法继承
3.在内存里,先创建父类的存储空间,再创建子类存储空间
4.子类是否可以访问父类中的成员变量和方法,取决于访问修饰符

三、单继承和多继承
1.单继承
(1)java中,一个类只能有一个父类
(2)Java可以实现多实现
(3)优点:结构清晰,血脉纯净
2.多继承
某些OOP语言,例如C++允许子类有多个父类

四、类和类的关系
1.继承
2.实现
3.部分和整体
(1)组合
(2)聚合
4.关联关系
5.依赖
6.所有类的超类:object
五、子类实例化
1.使用new实例化
2.但是要记住:并非先创建一个父对象,在创建一个子对象
3.而是只创建了一个对象,先给父类的属性分配空间,然后再叠加子类的私有属性,而是只创建了一个对象,先给父类的属性分配空间,然后再叠加子类的私有属性

这里写图片描述

猜你喜欢

转载自blog.csdn.net/Lsy_Coder/article/details/82352608
今日推荐