day02-多态,抽象类,接口
多态
-
指的是同一个对象,在不同时刻表现出来的多种形态。父类引用指向子类对象。
-
-
多态中成员的访问特点
- 编译看左边,运行也看左边
- 编译看左边,运行也看左边
-
多态中成员方法的访问的特点
-
编译看左边,运行看右边
-
-
多态的好处和弊端
-
多态中的转型
- 转型后可以访问子类特有的功能
- 向上转型
- 从子到父
- 父类引用指向子类对象
- 向下转型
- 从父到子
- 父类引用转为子类对象
-
多态转型内存图解
-
类型判断
-
//类型的判断:instanceof if(a instanceof Cat){ Cat cc = (Cat)a; cc.eat(); cc.playGame(); }
-
多态的定义
-
多态的定义格式
-
父类类型 变量名 = new 子类类型(); 变量名.方法名();
-
-
普通类多态定义的格式
-
父类 变量名 = new 子类();
-
-
抽象类多态定义格式
-
抽象类 变量名 = new 抽象子类(); abstract class Fu { public abstract void method(); } class Zi extends Fu { public void method(){ System.out.println(“重写父类抽象方法”); } } //类的多态使用 Fu fu= new Zi();
-
-
接口多态定义的格式
-
接口 变量名 = new 接口实现类(); interface Fu { public abstract void method(); } class Zi implements Fu { public void method(){ System.out.println(“重写接口抽象方法”); } } //接口的多态使用 Fu fu = new Zi();
-
抽象类
- 抽象类的特点
- 抽象类成员特点
接口
- java中的接口更多的体现在对行为的抽象
- 接口的特点
- 接口的成员特点
- 类和接口的关系
- 接口不能实现接口
- 抽象类和接口的区别,抽象类对事物的抽象,接口对行为的抽象