第六章继承和多态(重要)
程序员文章站
2022-06-12 20:46:13
...
一、子类
- is a 关系:一般与特殊关系;
- has a 关系:整体和部分关系;
- 继承关键字:
子类 extends 父类
-
Object
类
1. 是所有类的父类
2. 常用方法有:
1.getClass()
:获取当前对象所属的类的信息
2.toString()
:返回字符串对象
3.equals(Object o)
:比较两个对象是否是同一个对象 - 单继承
1. 只支持单继承;
2. 实现接口可以多继承
3. 构造方法不能被继承 - 对象转型
1.父类 名称 = new 子类();
向上转型
二、方法覆盖与多态
- 方法覆盖也叫方法重写
1. 子类与父类使用相同的方法名及参数列表,但是可以执行不同的功能;
2. 重写的方法允许访问的范围不能小于父类;
3. 重写的方法抛出的异常不能超过父类; - 调用父类的构造方法:
super(参数列表);
- 多态
1. 静态多态:同一个类中同名方法,参数列表可不同,叫重载;
2. 动态多态:子类和父类中同名同参方法,叫重写;
三、终极类与抽象类
- 终极类
//不能被继承 final class 终极类名{ 类体; } //不能被重写 子类不能重写父类的终极方法 final void 终极方法名(){ 方法体; } //不能被修改 值不能变 经常用于常量 final 类型 终极变量名 = 值;
- 抽象类
//有抽象方法的类是抽象类 //抽象类可以没有抽象方法 public abstract class 抽象类名{ 类体; } //方法不能被确定就叫抽象方法 public abstract 返回值类型 抽象方法名(参数列表);
四、接口(特殊的抽象类,所有方法都是抽象方法)
- 接口的定义
//修饰符 默认就是public 修饰符 interface 接口名 extends 多个父接口{ //静态常量 默认为 public static final 常量名 = 值; //抽象方法 } class 类名 implements 接口{ //接口方法实现 } ```
注意:程序分析题、简答题