复习面向对象--继承,重写,重载,抽象详解
Posted yikuan-919
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了复习面向对象--继承,重写,重载,抽象详解相关的知识,希望对你有一定的参考价值。
继承:在现有的基础上去构建一个新的类。构建出来的新类被称作子类,现有类称作父类,子类会自动拥有父类所有。
继承的优点:
提高了代码的可维护性;
提高了代码的复用性;
让类与类之间产生了继承关系
继承的弊端:
类与类之间的耦合度过高;(接口可以用于解耦和)
继承的特点:
java中只能够单继承,不能多继承,可以多层继承;
所有类都直接或者间接的继承了Object类,Object类称为祖宗类;
继承的注意事项:
使用关键字extends让类与类之间产生继承关系;
父类私有的成员,子类不能继承;
继承不可以随便继承,要符合什么是什么(苹果是水果的关系)
继承中的成员变量的关系:
不同名称的变量:
子类直接继承使用;
相同名称的变量:
默认访问的是子类自己的成员方法(this.),如果想访问父类的同名方法,请使用super.成员方法();
super用来表示当前对象中包含的父类对象空间的引用;
调用父类的成员变量:super.成员变量
调用父类的成员方法:super.成员方法()
方法的重写(override):在子父类中出现了方法声明相同的情况,也叫做方法覆盖;
方法重写注意事项:
子类的方法声明要与父类相同;
子类要重写方法的方法,方法的权限修饰符不能比父类的更低(>=)
父类私有的方法,子类不能够进行方法的重写;
方法重载(ovreload):指在同一个类中,多个方法名称相同,他们的参数列表不同(个数不同,数据类型不同);
抽象:
抽象方法:方法只有声明部分,没有方法体;
抽象类:包含抽象方法的类,一定是抽象类;abstract修饰;
抽象类的特点:
1.抽象类与抽象方法都必须使用abstract来修饰;
2.抽象类不能直接创建对象;
3.抽象类中可以有抽象方法,也可以没有抽象方法(不会让其他人直接创建该类对象);
4.抽象类的子类:实现了抽象方法的具体类、抽象类;
以上是关于复习面向对象--继承,重写,重载,抽象详解的主要内容,如果未能解决你的问题,请参考以下文章
面向对象的过程继承封装多态;抽象类访问修饰符的使用引用类型强制转换方法重写@override与重载空指针异常super关键字