实验五 面向对象的设计及编码(软件工程)

本文档详细介绍了面向对象设计的实验内容,包括问题域子系统、人机交互子系统和数据管理子系统的设计。在问题域子系统中,对预约管理系统的类图进行了设计;在人机交互子系统中,设计了登录和预约界面;数据管理子系统则涉及病人和预约信息的数据表结构。此外,还提供了使用Java语言实现预约信息管理的实体类,包括对象的查找、显示和插入操作。
摘要由CSDN通过智能技术生成

(一)实验目的要求

1. 了解面向对象设计工作的主要内容。 

2. 熟悉掌握面向对象设计中的4类子系统设计方法。

3. 会用某一面向对象编程语言编写程序。

(二)实验材料和仪器设备

1. PC机

2. UML绘图环境

3. 面向对象的程序设计开发环境

(三)实验内容

一、面向对象设计

1. 问题域子系统:从实现角度对实验4的预约管理系统的类图进行适当修改操作提示:补充类所对应的属性和操作,调整类结构。可参照需求描述并按照个人开发经验来完成,答案不唯一。

    请将复制到答题区,注意调整大小,显示不全将会影响实验成绩。

预约管理系统类图

 

2. 人机交互子系统:设计实验4的预约管理系统的登录界面及预约界面。操作提示:利用process on (登录 | ProcessOn)  来绘制,单击 “新建”选择“原型图”。可参照需求描述并按照个人经验来完成,答案不唯一。

预约管理系统界面设计——登录界面

预约管理系统界面设计——预约界面

3、数据管理子系统设计实验4预约管理系统的病人、预约信息数据表内容。数据表中信息有:序号、字段名、数据类型等。

病人表

序号

英文字段名

中文字段名

类型

是否为空

主键/外键

01

Name

姓名

Char

主键

02

Age

年龄

Int

03

Time

预约时间

Date

外键

04

Tele

电话

Char

05

Address

地址

Char

预约信息表

序号

英文字段名

中文字段名

类型

是否为空

主键/外键

01

Time

预约时间

Date

主键

02

Name

姓名

Char

外键

03

Age

年龄

Int

04

Tele

电话

Char

05

Time

就诊时间

Date

二、编码

用Java编写实验4预约管理系统中的预约信息实体类,并实现对预约信息的增加、查询(按照姓名)操作。操作提示:用数组存储数据对象即可。

提示网址:

https://blog.csdn.net/lifengfengli/article/details/104939254?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522162086830716780271553665%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=162086830716780271553665&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduend~default-4-104939254.first_rank_v2_pc_rank_v29&utm_term=java%E6%95%B0%E7%BB%84%E5%AD%98%E6%94%BE%E5%AF%B9%E8%B1%A1&spm=1018.2226.3001.418 

列出相关类的代码(标注释):


/**

     * 查找对象(假设lastName不重复)

     * @param lastName

     * @return

     */

    public boolean find(String lastName) {

       int i;

       for(i=0; i<nElems; i++) {

           if(person[i].getLastName().equals(lastName))

              break;

       }

       if(i == nElems) {

           System.out.println("can't find: " + lastName);

           return false;

       } else {

           System.out.println("find it");

           return true;

       }

    }

/**

     * 显示所有对象

     */
public void display() {

       for(int i=0; i<nElems; i++) {

           System.out.println(person[i].getLastName() + person[i].getFirstName() + ":" + person[i].getAge());

       }

}
/**

     * 插入对象

     * @param firstName

     * @param lastName

     * @param age

     */

    public void insert(String firstName, String lastName, int age) {

       person[nElems] = new Person(firstName, lastName, age);

       nElems++;

    }

基于java的实验室网上预约系统设计实现 技术:后端:java,前端:html+js+css 框架:springBoot SSM 运行工具:idea 数据库:mysql 源码:详见文章最后 1、    登录页面: 2、首页 3、用户管理  4、添加用户  5、角色管理  6、添加角色  7、编辑角色 8、预约管理  9、新增预约  10、数据统计 数据库脚本如下: CREATE TABLE `sys_user_t` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `role_id` VARCHAR(500) NULL DEFAULT NULL COMMENT '角色ID', `user_id` VARCHAR(50) NOT NULL COMMENT '用户ID', `user_name` VARCHAR(100) NOT NULL COMMENT '用户名', `status` VARCHAR(50) NOT NULL COMMENT '是否有效0:false\\\\\\\\1:true', `create_date` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP, `create_by` VARCHAR(100) NULL DEFAULT NULL, `last_update_date` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP, `last_update_by` VARCHAR(100) NULL DEFAULT NULL, `password` VARCHAR(128) NOT NULL, `tenantcode` VARCHAR(50) NOT NULL, `diskId` VARCHAR(500) NULL DEFAULT NULL, `remarks` VARCHAR(500) NULL DEFAULT NULL, PRIMARY KEY (`id`) ) COMMENT='系统用户表' COLLATE='utf8_general_ci' ENGINE=InnoDB AUTO_INCREMENT=52 ; CREATE TABLE `sys_role_t` ( `role_id` INT(11) NOT NULL COMMENT '角色ID', `role_name` VARCHAR(200) NOT NULL COMMENT '权限名称', `status` INT(11) NOT NULL COMMENT '是否有效0:true\\\\1:false', `create_date` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP, `create_by` VARCHAR(100) NULL DEFAULT NULL, `last_update_date` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP, `last_update_by` VARCHAR(100) NULL DEFAULT NULL ) COMMENT='系统角色表' COLLATE='utf8_general_ci' ENGINE=InnoDB ; CREATE TABLE `sys_menu_t` ( `id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '序列', `parent_id` VARCHAR(50) NOT NULL COMMENT '父节点ID', `menu_id` VARCHAR(50) NOT NULL COMMENT '菜单ID', `menu_name` VARCHAR(200) NOT NULL COMMENT '菜单名称', `menu_url` VARCHAR(200) NULL DEFAULT NULL COMMENT '菜单URL', `status` INT(11) NOT NULL COMMENT '有效(0有效,1失效)', `create_date` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP, `create_by` VARCHAR(200) NULL DEFAULT NULL, `last_update_date` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP, `last_update_by` VARCHAR(200) NULL DEFAULT NULL, PRIMARY KEY (`id`) ) COMMENT='菜单表' COLLATE='utf8_general_ci' ENGINE=InnoDB AUTO_INCREMENT=33 ; CREATE TABLE `client_manager_t` ( `id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '序列', `clientId` VARCHAR(50) NULL DEFAULT NULL COMMENT '客户编号', `clientName` VARCHAR(50) NULL DEFAULT NULL COMMENT '客户姓名', `address` VARCHAR(200) NULL DEFAULT NULL COMMENT '客户住址', `source` VARCHAR(200) NULL DEFAULT NULL COMMENT '客户所属公司', `sourceDate` VARCHAR(200) NULL DEFAULT NULL COMMENT '客户发展时间', `status` VARCHAR(200) NULL DEFAULT NULL COMMENT '客户级别', `clientNum` VARCHAR(200) NULL DEFAULT NULL COMMENT '拜访客户次数', `isTrue` VARCHAR(200) NULL DEFAULT NULL COMMENT '客户是否有效', PRIMARY KEY (`id`) ) COMMENT='客户人员信息表' COLLATE='utf8_general_ci' ENGINE=InnoDB AUTO_INCREMENT=47 ;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

钥钥睡着了

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值