【中国大学MOOC】java程序设计-week4-编写一个小的程序,其中定义一些接口、类、抽象类,定义它们的成员(字段及方法)

    科技2025-04-26  7

    1.题目

    编写一个小的程序,其中定义一些接口、类、抽象类,定义它们的成员(字段及方法), 要求使用使用setter/getter, static, final, abstract,@Override等语法要素,并写一个main函数来使用它们。这些类、接口可以是围绕以下选题之一

    飞翔世界:来一次飞翔接力(即多个可飞翔的对象依次调用);

    动物世界:来一次吃西瓜大赛;

    图书馆:模拟一天的借阅过程;

    学校:模拟选课过程;

    等等

    要求写个简要说明。

    2.题解

    public class MainTest { /** * 定义小明同学,设置小明的ID,小明进入选课界面,选择课程, * 如果选择课程超过数量限制,则提醒无法选择该课程 */ public static void main(String[] args){ AClassStudent xiaoming = new AClassStudent(); xiaoming.setId(521521); xiaoming.showID(); xiaoming.enter(); xiaoming.lookC("2天速成java高级工程师"); xiaoming.chooseC("2天速成java高级工程师"); xiaoming.lookC("机器学习入门"); xiaoming.chooseC("机器学习入门"); xiaoming.exit(); } } /** * 选择课程 接口,包含查询课程信息,选择课程 */ interface EnterChooseClass{ public void lookC(String CName); public void chooseC(String CName); } /** * 学生 抽象类, 包含展示学生ID,进入选课界面,退出选课界面 */ abstract class Student{ public void showID(){} public void enter(){} public void exit(){} } /** * A班的学生 类, 继承学生抽象类,添加选择课程接口 */ class AClassStudent extends Student implements EnterChooseClass{ private int id; // 学生的id int class_num = 0; // 已经选择课程数目 public static final int MAX_CLASS_NUMBER = 1; // 最大可选课程数目 public int getId(){ return id; } public void setId(int id){ this.id = id; } @Override public void showID(){ System.out.println("学生ID是"+id); } @Override public void enter(){ System.out.println("该学生进入选课界面"); } @Override public void exit(){ System.out.println("该学生退出选课界面"); } public void lookC(String CName){ System.out.println("学号"+id+"的学生查询\'"+CName+"\'课程信息"); } public void chooseC(String CName){ if(class_num<MAX_CLASS_NUMBER){ System.out.println("学号"+id+"的学生选择\'"+CName+"\'课程"); class_num++; } else{ System.out.println("学号"+id+"的学生无法选择\'"+CName+"\'课程,因为选课数目已到上限"); } } }
    Processed: 0.008, SQL: 8