news 2026/5/29 5:20:44

结构类算法题

作者头像

张小明

前端开发工程师

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/5/28 21:06:05

前端失业4个月了,我该怎么办,心发慌

2025开年,AI技术打得火热,正在改变前端人的职业命运: 阿里云核心业务全部接入Agent体系; 字节跳动30%前端岗位要求大模型开发能力; 腾讯、京东、百度开放招聘技术岗,80%与AI相关…… 大模型正在重构技术开发…

作者头像 李华
网站建设 2026/5/28 15:50:06

依赖冲突频发?Open-AutoGLM安装难题,一文解决所有Python环境问题

第一章:Open-AutoGLM Python 依赖安装在开始使用 Open-AutoGLM 前,必须正确配置其运行所需的 Python 环境与依赖包。该框架基于现代深度学习生态构建,依赖若干核心库以支持模型加载、推理与自动化任务调度。环境准备 建议使用虚拟环境隔离项目…

作者头像 李华
网站建设 2026/5/28 15:50:03

Open-AutoGLM环境搭建全攻略(从零到上线的完整路径)

第一章:Open-AutoGLM环境搭建全攻略概述 在构建基于大语言模型的自动化系统时,Open-AutoGLM 作为一个开源框架,提供了从模型调用、任务编排到结果解析的一体化支持。为确保开发者能够快速上手并稳定运行该系统,正确的环境配置是首…

作者头像 李华
网站建设 2026/5/29 2:06:09

麒麟操作系统下DM数据库全栈实操指南:从安装配置到SQL开发实战

目录 一、环境准备与DM数据库静默安装(麒麟V10) 二、DM数据库实例初始化与核心配置 三、DM数据库备份与还原策略(全量增量) 四、DM数据库函数用法详解(内置自定义) 五、DM SQL程序设计思路与实战 六、…

作者头像 李华
网站建设 2026/5/28 22:20:01

Open-AutoGLM本地部署从入门到精通,企业级安全配置与性能优化全掌握

第一章:Open-AutoGLM本地部署指南Open-AutoGLM 是一款基于 AutoGLM 架构的开源自动化语言模型工具,支持本地化部署与私有化调用。通过在本地环境中运行该模型,用户可在无网络依赖的情况下完成文本生成、代码补全与智能问答等任务。环境准备 部…

作者头像 李华