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());
    }
}
相关推荐
特立独行的猫A36 分钟前
用仓颉语言 cj-tauri 框架,五分钟给娃做了个鸿蒙形近字游戏
java·后端·python
大可不必了5 小时前
03 函数定义和调用
开发语言·python
I_belong_to_jesus5 小时前
C++关于分支预测的优化1
开发语言·c++·算法
承渊政道6 小时前
【Python编程—从入门到实践】(记分与闯关:用Python+Pygame,打造越战越精彩的太空大战!)
开发语言·python·pycharm·游戏程序·pygame
爱学习的程序媛6 小时前
Python常用框架梳理
开发语言·后端·python·ai·web·后端框架·python框架
budingxiaomoli7 小时前
Spring统一功能处理
java·后端·spring
eggwyw8 小时前
Anaconda安装卸载的详细流程指南
开发语言·python
Flynn Liang9 小时前
可观测性与成本治理:一次对话的 17 个观测点
java·langchain·可观测性·micrometer·langchain4j·token 成本·llm 监控
金銀銅鐵9 小时前
带您看懂字节码指令(三):同一行加法,为什么有四种指令
java·jvm
another heaven12 小时前
【C/C++ Ranges 是零开销抽象吗?拆开管道、惰性求值和编译期膨胀】
c语言·开发语言·c++