多态、接口、类练习题

代码:

 public static void main(String[] args) {Person2 person=new Person2("唐僧",new Horse());person.passRiver();person.onRoad();}

接口:

interface  Vehicles{public void work();
}
lass Horse implements Vehicles{@Overridepublic  void work() {System.out.println("大陆骑马去");}
}
class Boat implements  Vehicles{@Overridepublic void work() {System.out.println("过河坐船去");}
}
class Person2{private String name;private Vehicles Vehicles;public Person2(String name, Vehicles vehicles) {this.name = name;Vehicles = vehicles;}public void passRiver() {if (Vehicles == null) {Vehicles = VehiclesFactory.getBoat();}//过河,先从工厂获取一艘船Boat boat = VehiclesFactory.getBoat();boat.work();}public void onRoad () {//判断当前属性是否已经存在if (Vehicles == null) {Vehicles = VehiclesFactory.getHorse();}//过河,先从工厂获取一艘船Horse horse = VehiclesFactory.getHorse();horse.work();}}
public class VehiclesFactory {//写static,可以直接调用方法,不用创建对象public static Horse getHorse() {return new Horse();}public static Boat getBoat() {return new Boat();}
}

结果:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3281683.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

有了《米小圈日记魔法》,学习写作就是这么轻松!

在数字化和信息快速更迭的当下,孩子们的学习方式也在经历着剧变。传统的教育模式逐渐被各种富有创意和互动性的教学工具所取代。作为家长,我们常常会面临如何有效引导孩子学习,特别是培养他们的写作能力这一问题。在我看来,《米小…

惊爆!苹果 AI 的首批体验震撼登场!Siri 发生了天翻地覆的变化,其 AI 写作能力更是瞬间碾压大批应用!

🐱 个人主页:TechCodeAI启航,公众号:TechCodeAI 🙋‍♂️ 作者简介:2020参加工作,专注于前端各领域技术,共同学习共同进步,一起加油呀! 💫 优质专…

SpringBoot+Vue+kkFileView实现文档管理(文档上传、下载、在线预览)

场景 SpringBootVueOpenOffice实现文档管理(文档上传、下载、在线预览): SpringBootVueOpenOffice实现文档管理(文档上传、下载、在线预览)_霸道流氓气质的博客-CSDN博客_vue openoffice 上面在使用OpenOffice实现doc、excel、ppt等文档的管理和预览。 除此之外…

项目管理中的关键:进度管理

项目管理中,进度管理无疑占据了举足轻重的地位,它不仅关乎项目能否按时完成,更是衡量项目效率、成本控制及质量保障的重要标尺。 它要求管理者根据项目的总体目标,科学合理地制定项目进度计划,并在项目实施过程中进行…

AI写作|拆解小红书对标账号 只需简单手搓一个coze智能体(提示词+方法)

本文背景 我们都知道,要想在小红书上面搞到米,爆款笔记必不可少,平时我们也看过不少的关于如何制作爆款笔记的各种教程,但是抵不住太多太复杂,于是有没有一种办法能将这个工作交给AI来执行呢? 爆款笔记会涉…

《C++基础入门与实战进阶》专栏介绍

🚀 前言 本文是《C基础入门与实战进阶》专栏的说明贴(点击链接,跳转到专栏主页,欢迎订阅,持续更新…)。 专栏介绍:以多年的开发实战为基础,总结并讲解一些的C/C基础与项目实战进阶内…

Simulink仿真中出现“Output argument ‘y‘ is not assigned on some execution paths.”

在simulink中添加函数时,经常由于代码的不完全,导致在simulink仿真时经常会出现“Output argument y is not assigned on some execution paths. "的错误,这是由于在编写程序时,对于输出y的赋值没有考虑全面,如下…

Python酷库之旅-第三方库Pandas(055)

目录 一、用法精讲 206、pandas.Series.reset_index方法 206-1、语法 206-2、参数 206-3、功能 206-4、返回值 206-5、说明 206-6、用法 206-6-1、数据准备 206-6-2、代码示例 206-6-3、结果输出 207、pandas.Series.sample方法 207-1、语法 207-2、参数 207-3、…

Charles抓包工具系列文章(七)-- Rewrite工具的应用示例

一、背景 客户端通过域名访问后端服务,在api网关层,会判断path的前缀,默认/api开头的请求都转发至后端服务A。 当前缀是/assist/api开头,请求将转发至后端服务B(部署在192.168.80.226,便于测试对比) 在不改动kong网关配置的情况下,现需要把后者的请求转发至192.168.…

【基础篇】Docker 镜像管理 THREE

嘿,小伙伴们!我是小竹笋,一名热爱创作的工程师。在上一篇文章中,我们探讨了 Docker 的架构与关键组件。今天,让我们一起深入了解一下 Docker 镜像管理的相关知识吧! 📦 创建和管理镜像 镜像是…

IEEE计算智能学会深圳分会线上讲座 22-01期: 金耀初教授的科研经验分享

IEEE计算智能学会深圳分会线上讲座 22-01期: 金耀初教授的科研经验分享_哔哩哔哩_bilibili 非限定性定语从句,使用逗号和which、动名词搭配使用, 尽量避免使用被动语态。 obviously- 使用clearly,apparently感觉上更好。 In this study/work 后面的交…

C/C++文件IO常用函数总结

文章目录 1. 文件描述符2. 文件IO常用函数2.1打开文件:open2.2 关闭文件:close2.3 读写操作:read/write2.4 关于光标的操作:lseek 1. 文件描述符 文件描述符的本质是一个大于等于0的整数,在使用open函数打开文件时&am…

pychar安装、pychon安装、pycharm超过试用期30激活

如果pycharm超过试用期,可以双击vbs脚本重新激活 百度网盘: 链接: https://pan.baidu.com/s/1B-XyLOy3wjVWbJwuvZOHOw?pwdmsb6 提取码: msb6

【学术会议征稿】第六届经济管理与模型工程国际学术会议(ICEMME 2024)

第六届经济管理与模型工程国际学术会议(ICEMME 2024) 2024 6th International Conference on Economic Management and Model Engineering 第六届经济管理与模型工程国际学术会议(ICEMME 2024)将于2024年11月22-24日在中国大连…

Bugku-web-Flask_FileUpload

Bugku-web-Flask_FileUpload 查看源代码,提示用python返回结果 在file.jpg中写python代码 import os os.system(ls / )上传后查看源代码,找到flag文件夹 修改代码 import os os.system(cat /flag )

STM32的外部中断实现按键控制led灯亮灭(HAL库)

一:stm32外部中断概述 1:stm32的外部中断线 STM32的每个IO都可以作为外部中断输入。 STM32的中断控制器支持19个外部中断/事件请求: 线0~15:对应外部IO口的输入中断。 线16:连接到PVD输出。 线17:连接到R…

鸿蒙应用框架开发【首选项】 本地数据与文件

首选项 简介 本示例使用ohos.data.preferences接口,展示了使用首选项持久化存储数据的功能。 效果预览 使用说明 1.点击顶部titleBar的右侧切换按钮,弹出主题菜单,选择任意主题则切换相应的主题界面; 2.退出应用再重新进入&a…

智能合约中approve函数详解

场景 这段时间很多小伙伴加我、都咨询到了一个类似的业务场景、 如下: 1、第一步业务里面调用授权函数approve 、给指定address2、第二步是由授权的address调用transferFrom转移给指定的接受地址。 案例DEMO如下(这里test2肯定是会执行失败的&#xff…

相机标定(Camera Calibration)

什么是 相机标定(Camera Calibration)? 相机标定(CameraCalibration)是确定相机内部参数(如焦距、光学中心、畸变系数等)和外部参数(如相机在世界坐标系中的位置和姿态)的…

Jackson常用注解详解

Hi 👋, Im shy 有人见尘埃,有人见星辰 Jackson常用注解详解 文章目录 Jackson常用注解详解0. 引入依赖1. JsonProperty2. JsonIgnore3. JsonFormat4. JsonInclude5. JsonCreator6. JsonValue7. JsonIgnoreProperties结论 Jackson是Java生态系统中广泛…