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());
    }
}
相关推荐
Pandaconda几秒前
【计算机网络 - 基础问题】每日 3 题(三十四)
开发语言·经验分享·笔记·后端·计算机网络·面试·职场和发展
CocoaAndYy13 分钟前
设计模式-建造者模式
java·设计模式·建造者模式
Minyy1118 分钟前
小程序项目实践(一)--项目的初始化以及前期的准备工作
开发语言·前端·git·小程序·gitee·uni-app
今晚吃什么呢?19 分钟前
module
开发语言·javascript·ecmascript
碳苯25 分钟前
【rCore OS 开源操作系统】Rust 异常处理
开发语言·人工智能·后端·rust·操作系统·os
程序员大金39 分钟前
基于SpringBoot+Vue+MySQL的药品销售管理系统
java·vue.js·spring boot·mysql·tomcat·intellij-idea·mybatis
尘浮生42 分钟前
Java项目实战II基于Java+Spring Boot+MySQL的桂林旅游景点导游平台(源码+数据库+文档)
java·开发语言·数据库·spring boot·mysql·maven·intellij-idea
这孩子叫逆1 小时前
axios 使用
开发语言·javascript·ecmascript
careathers1 小时前
【Python】物流行业数据分析与可视化案例
开发语言·python·数据分析
艾伦~耶格尔1 小时前
Maven 高级之分模块设计与继承、聚合
java·后端·学习·maven·项目管理