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());
    }
}
相关推荐
AI+程序员在路上1 分钟前
嵌入式软件技术大全
linux·开发语言·arm开发·单片机
吴声子夜歌2 分钟前
JavaScript——数据类型
开发语言·javascript·ecmascript
black方块cxy7 分钟前
实现一个输入框多个ip以逗号分隔最多20组,且ip不能重复
java·服务器·前端
2401_8796938722 分钟前
C++中的观察者模式实战
开发语言·c++·算法
工頁光軍36 分钟前
基于Python的Milvus完整使用案例
开发语言·python·milvus
wregjru38 分钟前
【网络】8.五种 I/O 模型与多路转接详解
开发语言·php
fff98111843 分钟前
C++与Qt图形开发
开发语言·c++·算法
xht08321 小时前
PHP vs Python:编程语言终极对决
开发语言·python·php
计算机安禾1 小时前
【数据结构与算法】第3篇:C语言核心机制回顾(二):动态内存管理与typedef
c语言·开发语言·数据结构·c++·算法·链表·visual studio
23.1 小时前
【Java】char字符类型的UTF-16编码解析
java·开发语言·面试