news 2026/6/23 16:53:58

结构类算法题

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
结构类算法题

文章目录

  • 题目要求
  • 项目结构
  • 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()方法,打印“正在玩蓝色的玩具娃娃”}}

运行结果:

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/22 20:36:43

为什么你的Open-AutoGLM部署总失败?Docker最佳实践全解析

第一章:Open-AutoGLM部署失败的常见根源在部署 Open-AutoGLM 时,开发者常因环境配置、依赖冲突或权限设置不当导致服务无法正常启动。这些问题虽不显眼,却会显著延长调试周期,影响项目进度。环境依赖版本不匹配 Open-AutoGLM 对 P…

作者头像 李华
网站建设 2026/6/23 8:57:51

Open-AutoGLM安装总失败?深度解析Python依赖树中的隐藏陷阱

第一章:Open-AutoGLM安装失败的常见现象与初步诊断在部署 Open-AutoGLM 过程中,用户常遇到安装失败问题,这些故障通常表现为依赖缺失、环境冲突或权限异常。识别典型现象并进行快速诊断是解决问题的第一步。典型安装失败表现 执行 pip instal…

作者头像 李华
网站建设 2026/6/22 4:58:42

软件测试生命周期管理的核心框架与实践策略

在当今快速迭代的软件开发环境中,有效的测试生命周期管理已成为保障产品质量、控制项目风险的关键环节。本文从测试从业者的实际工作场景出发,系统阐述测试生命周期各阶段的组织方法、技术实践与协作机制,帮助团队建立可持续改进的质量保障体…

作者头像 李华
网站建设 2026/6/22 10:57:14

计算机毕设java疫情背景下大学生宿舍管理系统 基于Java的疫情环境下高校宿舍智能化管理系统开发 疫情防控期间大学生宿舍管理的Java平台构建与应用

计算机毕设java疫情背景下大学生宿舍管理系统2eq859 (配套有源码 程序 mysql数据库 论文) 本套源码可以在文本联xi,先看具体系统功能演示视频领取,可分享源码参考。随着疫情的持续影响,高校的日常管理面临着诸多挑战,尤…

作者头像 李华
网站建设 2026/6/15 10:35:27

别再有线连接了!Open-AutoGLM无线调试究竟有多强大?

第一章:告别有线束缚——Open-AutoGLM无线调试的革命性意义在移动开发与嵌入式系统演进的浪潮中,调试方式的革新始终是提升效率的关键。传统依赖USB线缆的调试模式虽稳定可靠,却严重制约了设备布局的灵活性与多场景测试的可行性。Open-AutoGL…

作者头像 李华
网站建设 2026/6/23 11:20:34

Open-AutoGLM权限困境破解,一文搞定非root环境下的完整部署流程

第一章:Open-AutoGLM权限困境的核心挑战在部署和集成 Open-AutoGLM 模型时,权限管理成为系统安全与功能可用性之间的关键矛盾点。该模型通常需要访问敏感数据源、执行远程调用并动态加载插件,而传统权限模型难以平衡灵活性与控制力。权限粒度…

作者头像 李华