java多态中向上转型+重写的奥秘
来源:互联网 发布:js 获取偶数列表 编辑:程序博客网 时间:2024/06/06 18:11
public class Vehicle {public void way(){System.out.println("我是父类 这是交通方法");}}import com.tb.bean.Vehicle;public class Air extends Vehicle {@Overridepublic void way() {System.out.println("我是飞机 我正在天上飞");}}import com.tb.bean.Vehicle;public class Bus extends Vehicle{@Overridepublic void way() {// TODO Auto-generated method stubSystem.out.println("我是汽车 我正在地上跑");}}import com.tb.bean.Vehicle;import com.tb.bean.child.Air;import com.tb.bean.child.Bus;public class Main {public static void main(String[] args) throws InstantiationException, IllegalAccessException {//字段永远是父类的 但是对于方法 它是运行时调用 在内存中是从对象的方法栈中弹出 首先弹出来的是子类的方法 //对于重写的方法 它首先弹出来的肯定是子类的//但是由于先前在创建对象的时候就已经做好了字典 经过一对比 //发现和字典中的完全一样 它就默认是父类的了Vehicle bus = new Bus();bus.way();Vehicle vehicle= new Vehicle();System.out.println("vehicle-->"+vehicle.getClass().getName());System.out.println("bus-->"+bus.getClass().getName());//可以看出对象还是自己 只不过用父类的引用指向了我自己 由于继承的单方向性 这样的结果肯定会导致//父类的引用不能直接调用父类中没有的成员//也就是说 子类现有一些特性成员 在上向转型过程中是加了一层纱遮住了 不能让父类的引用使用 Vehicle air = new Air();air.way();}}
1 0
- java多态中向上转型+重写的奥秘
- Java的向上转型
- java向上转型过程中方法重写
- JAVA的向上转型及向下转型
- Java的向上转型和向下转型
- Java的向上转型与向下转型
- Java的向上转型与向下转型
- Java的向上转型和向下转型
- Java的【向上转型】和【向下转型】
- java的向上转型和向下转型
- java的向上转型与向下转型
- java类的向上转型
- java 对象的向上转型
- java的向上向下转型
- java | 向上转型的应用
- Java | 向上转型的覆盖
- [JAVA]重写父类方法并向上转型时的初始化问题
- 【Java】向上转型 向下转型
- Ehcache学习(二)ehcache与spring注解实例
- 线程死锁
- 修改“xx已停止运行”的dialog的样式
- spring @Entity @Table
- TexturePacker非常棒的游戏资源图像处理工具
- java多态中向上转型+重写的奥秘
- 【ArcGIS API For JS】关于FeatureLayer的批量编辑
- 子线程通过接口更新UI线程
- ios 10 新系统功能
- 数据探索式测试(3)
- LeetCode第34题之Search for a Range
- 记一次与黑客在mysql服务器上的攻防
- Linux之gmime的编码和解码应用--不用自己造轮子
- Palindrome Number(回文数字)