求大神帮忙写一个变成 带注释的 我实在是没整明白!!

救救孩子吧 孩子可着急了!

设计科目类Subject,其类的实例表示大学课程科目。一门课程包含课程名(String)、课程编码(code)为六位字符串,前三位字符为字母代表学科领域,后三位字符为数字,课程编码是唯一的。

再定义类TestSubject 来测试Subject类。特别地,需要维护一科目subject数组,为了管理科目代码的唯一性,程序需要显示已经存储的科目代码信息,同时也要检测用户新提供的科目代码与现存科目代码是不同的。

Subject类需要提供一下数据与方法:

① 科目名称及六位科目代码

② 构造函数,参数为科目名称及新的有效科目代码

③ get函数获得属性值

④ getDiscipline方法返回科目代码前三位的学科代码字符串

⑤ codeMatches方法返回布尔值,表示科目代码与提供的字符型参数匹配。这里“Matches”与String类中matches方法类似。

⑥ toString方法返回包含课程代码和课程名称的字符串。

为帮助管理课程代码及他们的唯一性,Subject 类应提供的方法如下:

① allDisciplines方法:接受一个Subject对象的数组作为参数,返回一个包含不同3字符学科代码的数组,并以字母顺序排列。

② codesPerDiscipline方法:接受一个Subject对象的数组以及一个3字符学科代码作为参数,返回一个包含该特定学科的不同科目代码数组

③ isValidCode方法:接受一个字符串为参数,该字符串可能是一个新的科目代码,该方法返回一boolean值表示该字符串是否满足课程代码的结构要求。

④ codeExists方法:接受一个Subject对象的数组作为参数以及一个新的科目代码,返回一boolean值表示该科目代码是否已经在对象数组中存在。

⑤ sortDisciplines方法:接受一个Subject对象的数组作为参数,返回这些科目的字符顺序排列的数组

设计科目类Subject,其类的实例表示大学课程科目。一门课程包含课程名(String)、课程编码(code)为六位字符串,前三位字符为字母代表学科领域,后三位字符为数字,课程编码是唯一的。相关推荐

  1. 前三十年看父敬子,后三十年看子敬父

    一句老话,老爸从小就告诉我的老话.一直琢磨到现在.我的前三十年,也没剩下多少时间了.我却还没有准备好后三十年. 我没准备好让别人因我而尊敬我的父亲,也没准备好让别人因我而尊敬我的孩子. 家长从自己孩子 ...

  2. python问题“遗忘的密码” 1、密码是六位数字前面两位为31;2、组后两位数字相同;3、能被16和46整除,请你找出左右可能的密码及统计个数

    使用"枚举法"进行分析 **n = 0 for i in range(0,10000): s = 310000 + i if s % 16 == 0 and s % 46 == 0 ...

  3. 五分钟看懂UML类图与类的关系详解

    在画类图的时候,理清类和类之间的关系是重点.类的关系有泛化(Generalization).实现(Realization).依赖(Dependency)和关联(Association).其中关联又分为 ...

  4. UML类图与类的关系详解

    UML类图与类的关系详解   2011-04-21 来源:网络   在画类图的时候,理清类和类之间的关系是重点.类的关系有泛化(Generalization).实现(Realization).依赖(D ...

  5. UML类图与类的关系详解【转】

    在画类图的时候,理清类和类之间的关系是重点. 类的关系有泛化(Generalization).实现(Realization).依赖(Dependency)和关联(Association).其中关联又分 ...

  6. NumberFormat类、BigInteger类和BigDecimal类-JAVA

    JAVA数学计算函数的总结 提示:以下是本篇文章正文内容,下面案例可供参考 1.NumberFormat类: (public abstract class NumberFormat extends F ...

  7. js 截取字符串后几位,字符串反转

    function getStr(str){ //截取后8位 //return str.match(/.*(.{8})/)[1] ; //截取后2位 return str.match(/.*(.{2}) ...

  8. 阿里P6+的Java架构班课程招生,仅限20名!

    现阶段很多人被表象迷惑,说从事Java的开发人员并不好找工作.一部分人就误以为市场饱和了,却没考虑到是自身能力不足,而且他们在学习的过程中往往是这样的: 对知识点不会筛选,盲目买书看视频,资料堆积如山 ...

  9. 拼题A基础篇31 字符,字母的输出问题

    拼题A基础题31(字符,字母的输出问题) 7-32 输出三角形字符阵列 (20分) #include<stdio.h> main() {int n, count, k = 0;scanf( ...

最新文章

  1. ib_logfile 在数据库中有何作用?
  2. 2021年人工神经网络第三次作业-第二题:遗传算法与人工神经网络-参考答案
  3. 湖南科技大学c语言程序设计b,2017年湖南科技大学计算机科学与工程学院826C语言程序设计与数据结构综合之数据结构考研题库...
  4. 堆叠与M-LAG,为什么要从堆叠切换为M-LAG?
  5. IE浏览器加载CSS文件,但是不起作用的原因
  6. MATLAB随机信号统计特征
  7. 2017年Q1安卓ROOT类恶意病毒发展趋势研究报告
  8. linux 部署php svn,Linux服务器搭建svn环境方法详解
  9. Idea java 程序打jar包(maven)
  10. 高德地图+Serverless 护航你的假日出行
  11. 微分方程之————微分方程的基本概念
  12. linux环境根据pid查看堆栈大小,linux - 通过PID获取过程的机器代码,而无需附加调试器 - 堆栈内存溢出...
  13. jQuery基础之jQuery和原生js实现tab选项卡和电影排行榜
  14. java基于springboot+vue的旧物置换网站
  15. 只用一招!Python实现微信防撤回!
  16. java qq 邮箱发送错误以及端口号
  17. adb使用-详细教程(Awesome Adb)
  18. C语言if语句实现成绩划分
  19. 基于BPM(业务流程管理)的低代码开发平台有哪些优势?
  20. 诺基亚wp手机安装linux,1小时搞定 普通用户3步轻松更新WP8.1

热门文章

  1. 亲爱的百度,您带着bug翩翩走来……呃
  2. 如何做好百度推广?在做电商店铺引流上怎么做百度推广
  3. DIJSPFA-Til the Cows Come Home POJ - 2387
  4. 素有高冷之称,曾被微软放言取代冯氏结构的FPGA,被阿里云玩“活”了
  5. 孩子用什么样的灯对眼睛没有伤害呢?分享对孩子眼睛好的台灯
  6. 攻防世界misc——适合作为桌面壁纸
  7. 摩客怎么设置安卓的dp_安卓屏幕完美适配方案——独家秘笈
  8. 禅道项目管理软件配置及使用教程
  9. Latex中多个作者用同一个地址、一个作者用多个地址等问题(以Elsevier为例)
  10. 多个刮刮乐html,HTML5canvas实现高斯模糊、刮刮乐