java多态-cnblog

java多态

细分的重载会增加代码量,降低易用程度

定义一个类,继承所有类的对象,根据向上转型可以让每个类的对象都调用初始类的方法,在方法中设置判断,不同的对象导致方法做不同的事,这就是多态

写一个灯亮的方法,每个灯都要亮

c++ 复制代码
红灯亮45秒
黄灯亮5秒
绿灯亮30秒
c++ 复制代码
package nb;

class Deng{}
class Ld extends Deng{}
class Hd extends Deng{}
class Rd extends Deng{}
public class Dd {
    public static void line(Deng s){
        if (s instanceof Ld){
            System.out.println("绿灯亮30秒");
        }
        if (s instanceof Hd){
            System.out.println("黄灯亮5秒");
        }
        if (s instanceof Rd){
            System.out.println("红灯亮45秒");
        }
    }

    public static void main(String[] args) {
        line(new Ld());
        line(new Rd());
        line(new Hd());
    }
}
相关推荐
带刺的坐椅13 小时前
Solon I18n:三种解析器,零样板代码
java·国际化·i18n·solon·多语言
掉鱼的猫13 小时前
Solon I18n:三种解析器,零样板代码
java
程序员阿明14 小时前
spring boot3访问resources下的文件,使得在浏览器url中可以直接访问
java·spring boot·后端
wuminyu14 小时前
JUC包的AQS与JVM的ObjectMonitor机制对比分析
java·linux·c语言·jvm·c++
霸道流氓气质14 小时前
SpringBoot中使用OAuth2 认证与 JWT Token — 概念、原理与实践
java·spring boot·后端
dogstarhuang14 小时前
Kimi K3 本地部署实战:从 1.56TB 权重到推理服务的完整成本分析
java·人工智能·后端·ai·开源·接口·程序员创富
就不掉头发14 小时前
C++函数模板
java·开发语言·c++
用户2986985301415 小时前
Word 转 PDF 的 3 种自动化实现:从桌面操作到后端服务集成
java·人工智能·后端
我是苏苏15 小时前
WPF开发01:基础控件及常用模板篇
开发语言·c#·html·wpf
wuyk55515 小时前
89.嵌入式内存管理的“稳定利器”:内存池原理与C语言实现
c语言·开发语言·stm32·单片机·嵌入式硬件