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());
    }
}
相关推荐
IT界的奇葩16 小时前
代码规范 spring-javaformat使用
java·spring·代码规范
披着羊皮不是狼16 小时前
多用户跨学科交流系统(4)参数校验+分页搜索全流程的实现
java·spring boot
AI_567816 小时前
接口测试“零基础通关“:Postman从入门到自动化测试实战指南
开发语言·lua
是Yu欸16 小时前
Rust 并发实战:从零构建一个内存安全的“番茄时钟”
开发语言·安全·rust
小池先生16 小时前
Gradle vs Maven 详细对比
java·maven
q***239216 小时前
基于SpringBoot和PostGIS的云南与缅甸的千里边境线实战
java·spring boot·spring
q***787817 小时前
Spring Boot的项目结构
java·spring boot·后端
应用市场17 小时前
Qt QTreeView深度解析:从原理到实战应用
开发语言·数据库·qt
q***965817 小时前
Spring Data JDBC 详解
java·数据库·spring
ooooooctober17 小时前
PHP代码审计框架性思维的建立
android·开发语言·php