当前位置: 首页 > news >正文

Java快速上手之实验4(接口回调)

1.编写接口程序RunTest.java,通过接口回调实现多态性。解释【代码4】和【代码6】的执行结果为何不同?

interface Runable{

void run();

}

class Cat implements Runable{

public void run(){

System.out.println("猫急上树..");

}

}

【代码1】  // 参照Cat类,定义Dog类并实现Runable接口

public void run(){

System.out.println("狗急跳墙..");

}

}

public class RunTest{

public static void main(String[] args){

【代码2】  // 声明Runable接口变量r

【代码3】  // 接口变量r中存放一个Cat对象的引用

        【代码4】  // 调用Cat对象的run()方法

System.out.println("-----------");

【代码5】  // 接口变量r中存放一个Dog对象的引用

        【代码6】  // 调用Dog对象的run()方法

}

}

// 定义接口
interface Runable {void run(); // 抽象方法
}// 定义Cat类并实现Runable接口
class Cat implements Runable {@Overridepublic void run() {System.out.println("猫急上树..");}
}// 定义Dog类并实现Runable接口
class Dog implements Runable {@Overridepublic void run() {System.out.println("狗急跳墙..");}
}// 测试类
public class RunTest {public static void main(String[] args) {// 【代码2】声明Runable接口变量rRunable r;// 【代码3】接口变量r中存放一个Cat对象的引用r = new Cat();// 【代码4】调用Cat对象的run()方法r.run();System.out.println("-----------");// 【代码5】接口变量r中存放一个Dog对象的引用r = new Dog();// 【代码6】调用Dog对象的run()方法r.run();}
}

相关文章:

  • 长城杯铁人三项初赛-REVERSE复现
  • Vue3 ref与props
  • CTF--file_get_contents
  • 【多线程】线程互斥 互斥量操作 守卫锁 重入与线程安全
  • 大模型工业化元年:GPT-5开启通用AI新纪元,中国技术如何破局?
  • 安宝特案例 | 物流仓储头部企业应用AR+作业流,规范日常安全点检,保障消防安全
  • 简单易懂:从零开始训练CLIP模型的实用指南
  • SiamMask原理详解:从SiamFC到SiamRPN++,再到多任务分支设计
  • 数字IC后端项目典型问题之后端实战项目问题记录(2025.04.24)
  • Spark-Streaming核心编程(2)
  • 利用 SSE 实现文字吐字效果:技术与实践
  • 作业。。。。。。
  • Kubernetes 常用运维命令整理
  • 如何用大模型技术重塑物流供应链
  • 智慧景区国标GB28181视频平台EasyGBS视频融合应用全场景解决方案
  • CentOS 7上安装与配置Memcached及PHP客户端使用教程
  • 2025磐石行动第七周WP
  • 5.3.1 MvvmLight以及CommunityToolkit.Mvvm介绍
  • 【win11 安装WSL2 详解一遍过!!】
  • 什么是Wi-SUN?与其他低功耗广域网技术有何区别?
  • 上海车展迎来超百款首发新车,全市多区开展汽车促消费活动
  • 神二十发射时间藏着两彩蛋:恰逢东方红一号发射55周年和第十个“中国航天日”
  • 新闻1+1丨“龟速”行驶要治理,还要治什么?
  • 【社论】上海车展40年,见证了什么
  • 经常失眠,睡眠质量低?也许只是缺这种营养
  • 国家疾控局局长沈洪兵:将逐步缩小国内免疫规划与国际差距