面向对象设计(实验四)软件工程头歌

面向对象设计的基本概念

问题域分析基本概念

问题域分析部分设计实例

 

 

任务描述

请根据时序图所描述的信息,设计获取酒店信息的类,并画出对应的类图。

(请画出获取酒店信息的具体类图,包含属性,答案保存为:/data/workspace/myshixun/answer/step4/step4.mdj)

 

第6关:设计客户类和获取酒店信息的类的关联关系

100

  • 任务要求
  • 参考答案
  • 评论30

阅读材料

酒店管理系统是为酒店及其客户服务的业务平台,开发的目标是用于帮助客户预订酒店,包括选择酒店、提交订单和撤销订单;以及帮助酒店处理预订业务,包括接受客户预订、执行客户订单和活动促销。通过酒店管理系统的应用,期望防范恶意预订、提高酒店的房间利用效率、为酒店吸引回头客并提高客户的满意度、提高酒店销售额和利润。

任务描述

请根据时序图所描述的信息,画出客户类和获取酒店信息的类之间的关联关系(由客户“发起”获取酒店信息的要求)。

(请画出客户类和获取酒店信息的类之间的关联关系图,答案保存为:/data/workspace/myshixun/answer/step5/step5.mdj)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 16
    点赞
  • 78
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
实验目的:了解面向对象程序设计的基本概念和方法,掌握基本的面向对象程序设计技能。 实验要求:通过编写一个简单的学生信息管理系统,掌握面向对象程序设计的基本概念和方法,能够熟练运用类、对象、继承、多态等面向对象程序设计技术。 实验步骤: 1. 确定系统功能 本次实验的学生信息管理系统需要包含以下功能: - 添加学生信息 - 删除学生信息 - 修改学生信息 - 查询学生信息 - 显示所有学生信息 2. 设计类的结构 根据系统功能,设计出以下类的结构: - 学生类(Student):包含学生的姓名、学号、性别、年龄等基本信息。 - 学生信息管理类(StudentManager):包含添加学生信息、删除学生信息、修改学生信息、查询学生信息、显示所有学生信息等功能。 3. 编写代码 根据类的结构,编写代码实现系统功能。具体实现方法可以参考以下步骤: - 定义学生类(Student),包含学生的姓名、学号、性别、年龄等基本信息。 - 定义学生信息管理类(StudentManager),包含添加学生信息、删除学生信息、修改学生信息、查询学生信息、显示所有学生信息等功能。 - 在主函数中实现菜单功能,让用户选择需要执行的操作。 以下是示例代码: ```java import java.util.ArrayList; import java.util.Scanner; class Student { String name; String id; String gender; int age; public Student(String name, String id, String gender, int age) { this.name = name; this.id = id; this.gender = gender; this.age = age; } public void printInfo() { System.out.println("姓名:" + name); System.out.println("学号:" + id); System.out.println("性别:" + gender); System.out.println("年龄:" + age); } } class StudentManager { ArrayList<Student> students = new ArrayList<Student>(); public void addStudent() { Scanner scanner = new Scanner(System.in); System.out.print("请输入学生姓名:"); String name = scanner.nextLine(); System.out.print("请输入学生学号:"); String id = scanner.nextLine(); System.out.print("请输入学生性别:"); String gender = scanner.nextLine(); System.out.print("请输入学生年龄:"); int age = scanner.nextInt(); students.add(new Student(name, id, gender, age)); System.out.println("添加成功!"); } public void deleteStudent() { Scanner scanner = new Scanner(System.in); System.out.print("请输入要删除的学生学号:"); String id = scanner.nextLine(); for (int i = 0; i < students.size(); i++) { if (students.get(i).id.equals(id)) { students.remove(i); System.out.println("删除成功!"); return; } } System.out.println("没有找到该学生!"); } public void updateStudent() { Scanner scanner = new Scanner(System.in); System.out.print("请输入要修改的学生学号:"); String id = scanner.nextLine(); for (int i = 0; i < students.size(); i++) { if (students.get(i).id.equals(id)) { System.out.print("请输入学生姓名:"); String name = scanner.nextLine(); System.out.print("请输入学生性别:"); String gender = scanner.nextLine(); System.out.print("请输入学生年龄:"); int age = scanner.nextInt(); students.set(i, new Student(name, id, gender, age)); System.out.println("修改成功!"); return; } } System.out.println("没有找到该学生!"); } public void searchStudent() { Scanner scanner = new Scanner(System.in); System.out.print("请输入要查询的学生学号:"); String id = scanner.nextLine(); for (int i = 0; i < students.size(); i++) { if (students.get(i).id.equals(id)) { students.get(i).printInfo(); return; } } System.out.println("没有找到该学生!"); } public void printAllStudents() { for (int i = 0; i < students.size(); i++) { students.get(i).printInfo(); } } } public class Main { public static void main(String[] args) { StudentManager studentManager = new StudentManager(); Scanner scanner = new Scanner(System.in); while (true) { System.out.println("请选择要执行的操作:"); System.out.println("1. 添加学生信息"); System.out.println("2. 删除学生信息"); System.out.println("3. 修改学生信息"); System.out.println("4. 查询学生信息"); System.out.println("5. 显示所有学生信息"); System.out.println("0. 退出"); int choice = scanner.nextInt(); scanner.nextLine(); switch (choice) { case 0: System.out.println("谢谢使用!"); System.exit(0); break; case 1: studentManager.addStudent(); break; case 2: studentManager.deleteStudent(); break; case 3: studentManager.updateStudent(); break; case 4: studentManager.searchStudent(); break; case 5: studentManager.printAllStudents(); break; default: System.out.println("无效的选择!"); } } } } ``` 4. 运行程序 编译代码并运行程序,测试系统功能是否正常。 实验总结: 通过本次实验,我们学习了面向对象程序设计的基本概念和方法,掌握了基本的面向对象程序设计技能,能够熟练运用类、对象、继承、多态等面向对象程序设计技术。在实际编程中,需要根据具体问题进行类的设计,合理运用面向对象程序设计技术,编写出高效、可靠、易于维护的程序。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值