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());
    }
}
相关推荐
java修仙传9 小时前
Java 实习日记:断面状态筛选 Bug 修复与对比案例日期过滤优化
java·bug·实习
AI玫瑰助手9 小时前
Python运算符:算术运算符(加减乘除取模幂)详解
开发语言·python
长谷深风1119 小时前
Java并发编程:线程安全与多线程实战指南【个人八股】
java·安全·线程·进程·juc·并发与并行·上下文切换(性能影响因素)
xiaoye-duck9 小时前
Qt 信号与槽深度解析:connect 用法、自定义信号槽与 Lambda 实战
开发语言·qt
basketball6169 小时前
C++ 强制类型转换:从 C 风格到 C++ 四大金刚
java·c语言·c++
lsx2024069 小时前
C AI 编程助手:助力开发者高效编程
开发语言
沐知全栈开发9 小时前
Eclipse 编译项目指南
开发语言
Dicky-_-zhang9 小时前
容器网络CNI实战:从零搭建网络插件
java·jvm
Mahir089 小时前
Spring 事务深度解析:核心原理与 12 种事务失效场景全解
java·spring·面试·事务失效
无限进步_9 小时前
C++11概览与统一初始化
开发语言·c++