public class Polymorphism {
public static void main(String[] args) {
Animal a1 = new Dog();
Animal a2 = new Cat();
/*
多态的编译过程会先看左边的类型,导致子类的函数不能用。但是多态在运行的时候会看右边,自动匹配子类对象
a1.eat();
a1.bark();//运行时多态看左边,左边是Animal类型,没有bark方法,导致报错
a2.eat();
a2.meow();//运行时多态看左边,左边是Animal类型,没有meow方法,导致报错
*/
a1.eat();
((Dog)a1).bark();
a2.eat();
((Cat)a2).meow();
}
}
多态:编译时看左边,运行时看右边
亓才孓2026-01-07 13:24
相关推荐
lee_curry17 小时前
第四章 jvm中的垃圾回收器九转成圣18 小时前
Java 性能优化实战:如何将海量扁平数据高效转化为类目字典树?SmartRadio19 小时前
ESP32-S3 双模式切换实现:兼顾手机_路由器连接与WiFi长距离通信laowangpython19 小时前
Rust 入门:GitHub 热门内存安全编程语言我叫汪枫19 小时前
在后台管理系统中,如何递归和选择保留的思路来过滤菜单_.Switch19 小时前
东方财富股票数据JS逆向:secids字段和AES加密实战软件技术NINI19 小时前
webkit简介及工作流程Brendan_00119 小时前
JavaScript的Stomp.over念23419 小时前
f5 shape分析苍穹之跃19 小时前
某量JS逆向