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

结构类算法题

文章目录

  • 题目要求
  • 项目结构
  • 1.Action
  • 2.Colorable
    • Step1:写接口和父类
    • Step2:写实现类
    • Step3:写测试类

题目要求

项目结构

1.Action

packageProgramDesign.Action;/** * 接口 * 1. 方法的定义(抽象方法、静态方法、默认修饰权限) */publicinterfaceAction{// 1.定义常量// 2.定义抽象方法actabstractvoidact();// 抽象方法,具体实现由实现类提供// 3.定义静态方法infostaticvoidinfo(){// 静态方法,可以直接通过接口名调用System.out.println("这是静态方法");}// 4.默认方法shout,输出常量reactiondefaultvoidshout(){// 默认方法,具体实现由接口提供,实现类也可以覆盖System.out.println(reaction);// 访问接口中定义的常量}// 定义常量reactionStringreaction="run";// 常量,所有实现类共享}

2.Colorable

packageProgramDesign.Action;/** * 测试动作接口 * 1. 匿名内部类 */publicclassTestAction{publicstaticvoidmain(String[]args){// 匿名内部类实现接口 ActionActionaction=newAction(){@Override// 重写接口中的抽象方法actpublicvoidact(){// 实现act方法System.out.println("匿名内部类实现了 act 方法");}};// 调用实现后的 act 方法action.act();// 输出:匿名内部类实现了 act 方法// 调用接口的静态方法 info()Action.info();// 输出:这是静态方法// 调用默认方法 shout()action.shout();// 输出:run}}

Step1:写接口和父类

packageProgramDesign.Colorable;/** * 定义一个接口Colorable,包含一个方法void setColor(String color) */publicinterfaceColorable{voidsetColor(Stringcolor);}
packageProgramDesign.Colorable;/** * 创建一个抽象类Toy,包含一个方法void play() */publicabstractclassToy{abstractvoidplay();}

Step2:写实现类

packageProgramDesign.Colorable;/** * Doll类,继承自Toy类,并实现Colorable接口。 */publicclassDollextendsToyimplementsColorable{privateStringcolor;// 私有属性,用于存储玩偶的颜色@OverridepublicvoidsetColor(Stringcolor){this.color=color;// 将传入的颜色值赋给color属性}@Overridepublicvoidplay(){System.out.println("正在玩"+color+"的玩具娃娃");// 输出玩偶的颜色和玩偶的状态}}
packageProgramDesign.Colorable;publicclassCarextendsToyimplementsColorable{privateStringcolor;// 私有属性,用于存储玩偶的颜色@OverridepublicvoidsetColor(Stringcolor){this.color=color;// 将传入的颜色值赋给color属性}@Overridepublicvoidplay(){System.out.println("正在玩"+color+"的玩具车");// 输出玩偶的颜色和玩偶的状态}}

Step3:写测试类

packageProgramDesign.Colorable;/** * 测试类: * 1. 实例化Car和Doll对象,分别调用setColor方法设置它们的颜色为“红色”和“蓝色”。 * 2. 分别调用play()方法,打印出“正在玩红色的玩具车”和“正在玩蓝色的玩具娃娃”。 */publicclassTestToy{publicstaticvoidmain(String[]args){Carcar=newCar();// 创建Car对象car.setColor("红色");// 设置Car对象的颜色为“红色”car.play();// 调用Car对象的play()方法,打印“正在玩红色的玩具车”Dolldoll=newDoll();// 创建Doll对象doll.setColor("蓝色");// 设置Doll对象的颜色为“蓝色”doll.play();// 调用Doll对象的play()方法,打印“正在玩蓝色的玩具娃娃”}}

运行结果:

http://www.cnnetsun.cn/news/167101.html

相关文章:

  • 为什么你的Open-AutoGLM部署总失败?Docker最佳实践全解析
  • Open-AutoGLM安装总失败?深度解析Python依赖树中的隐藏陷阱
  • 软件测试生命周期管理的核心框架与实践策略
  • 计算机毕设java疫情背景下大学生宿舍管理系统 基于Java的疫情环境下高校宿舍智能化管理系统开发 疫情防控期间大学生宿舍管理的Java平台构建与应用
  • 别再有线连接了!Open-AutoGLM无线调试究竟有多强大?
  • Open-AutoGLM权限困境破解,一文搞定非root环境下的完整部署流程
  • 安卓13适配倒计时,Open-AutoGLM开发者必须掌握的8项声明式权限配置技巧
  • Open-AutoGLM模型下载加速指南(仅限内部使用的CDN加速方案曝光)
  • 复盘:我们是如何将测试周期缩短50%的
  • spring16,17-加载properties文件,容器
  • 黑客和程序员谁更胜一筹?从技术实力、就业范围到赚钱潜力的全方位对比
  • 揭秘Open-AutoGLM虚拟机部署难题:99%新手都会忽略的3个关键细节
  • Open-AutoGLM如何秒连WiFi?:工程师不会告诉你的4种高效方案
  • Open-AutoGLM模型拉取卡顿?:3步诊断+4大加速引擎推荐
  • 开题季救星:除了 paperzz,这 7 个 AI 工具能让你的报告 “一键丝滑”
  • RAG不死反进化:2025年大模型时代RAG技术架构与演进全解析
  • 基于51单片机智能老人防跌倒报警体温GSM短信上报
  • 基于51单片机云台控制系统电路设计
  • 基于51单片机手机无线蓝牙APP遥控智能车系统
  • Playwright 文件上传与下载完成判断全指南
  • Open-AutoGLM非root权限实战指南(99%人忽略的关键细节)
  • 从模糊到精准:Open-AutoGLM指令解析优化全流程详解,效率提升200%
  • 独家披露:顶尖AI工程师都在用的Open-AutoGLM Mac环境配置方案
  • Open-AutoGLM安装卡在第一步?这份保姆级图文指南必须收藏,错过再等一年
  • Open-AutoGLM操作序列优化实战(专家级调优技巧大公开)
  • 【大模型系统容错进阶指南】:Open-AutoGLM重试机制的7大设计模式
  • Open-AutoGLM坐标偏差高达2米?教你4种高效校正方法
  • 语义解析准确率提升关键路径,Open-AutoGLM最新迭代深度解读
  • 收藏!一文读懂RAG技术核心(附大模型从入门到实战全套学习礼包)
  • 重磅消息!ESXi 8.0 系列推出ESXi 8.0 Update 3h 更新重要版本啦