ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
# 1.1 项目目标 ## 1.1.1 知识目标 1.面向对象设计的思想 2.流程控制的合理运用 3.数组存储数据 ## 1.1.2 能力目标 该案例着重训练点在Java中的数组应用,项目综合面向对象设计的思想,把集合和流程控制结合起来综合应用;使用对象存储汽车信息,以提升学生实际编程能力和算法处理能力。 ## 1.1.3 素养目标 1.明确数组的创建和使用 2.明确数组是如何存储数据的 # 1.2 案例描述 汽车销售系统中,像商城和超市这样的地方一样,都需要有自己的产品管理,并且产品的库存变化有专人记录管理,这样才能保证商城和超市正常运转。 本例要求编写一个程序实现汽车销售系统,该系统主要包括用户和管理员角色。普通用户可以查询所有汽车信息、按照品牌查询汽车信息,购买汽车,查询账户余额,修改账户信息,退出系统,管理员可以进行汽车信息查询、用户信息查询、添加汽车信息、删除用户信息、修改和删除汽车信息、退出系统功能。 # 1.3 实现效果 :-: ![](.topwrite/assets/1664129494479.jpg) :-: 图1 普通用户登录及功能 :-: ![](.topwrite/assets/1664129512693.jpg) :-: 图2 管理员登录及主要功能 :-: ![](.topwrite/assets/image_1664129534524.png) :-: 图3 管理员查看所有汽车信息 :-: ![](.topwrite/assets/image_1664129548063.png) :-: 图4 管理员查看所有用户信息 :-: ![](.topwrite/assets/image_1664129553684.png) :-: 图5 管理员添加汽车信息 :-: ![](.topwrite/assets/image_1664129557544.png) :-: 图6 删除用户信息及修改汽车信息 :-: ![](.topwrite/assets/image_1664129563679.png) :-: 图7 删除汽车信息及退出系统 # 1.4 知识点 (1)面向对象设计的思想 (2)流程控制的合理运用 (3)集合框架存储数据,重点是ArrayList的数据存取操作。 # 1.5 案例分析 ## 1.5.1 功能划分 系统角色划分为普通用户和管理员,基本模块包括: | 功能点 | 难度| 备注 | | --------------- | ---------- | ------------------- | | 用户登录 | ★★ | 账号和密码判断是否同时满足条件 | | 管理员登录 | ★★ | 和普通用户的区分 | | 普通用户:查询所有汽车信息 | ★★★ | 增强型循环遍历 | | 普通用户:按品牌查询汽车信息 | ★★★★ | 循环遍历加条件判断 | | 普通用户:购买汽车 | ★★ | 向列表中添加元素 | | 普通用户:查询账户余额 | ★★ | 列表单个元素查询 | | 普通用户:修改账户信息和退出 | ★★★ | 修改列表元素 | | 管理员:查看所有汽车信息 | ★★★ | 增强型循环遍历 | | 管理员:查看所有用户信息 | ★★★ | 增强型循环遍历 | | 管理员:添加汽车信息 | ★★ | 向列表中添加元素 | | 管理员:删除某个用户信息 | ★★ | 从列表中删除某个元素 | | 管理员:修改某个汽车信息 | ★★★ | 更新列表中的某个元素 | | 管理员:删除某个汽车信息及退出 | ★★ | 从列表中删除某个元素 | | 退出系统 | ★ | 退出循环 | ## 1.5.2 概要设计 纯Java版汽车管理销售系统(eclipse编译后控制台运行),分为管理员登陆和用户登陆,数据用数组存储,Java控制台运行管理。 需要创建模型层和服务层,模型层有管理员类Admin、汽车类Car,普通用户类User和存取用户模型的数组。在服务层需要创建存储汽车模型的数组和主类Main。 ## 1.5.3 详细设计 本项目中需要创建的实体类有Cars类、User类和Admin类,然后再服务层创建Main类 :-: ![](.topwrite/assets/image_1664129669704.png) :-: 图1 系统类图 # 1.6 实现要点 本项目中核心要点是实现UserList和CarsList两个类,分别在对应的类中实现对数据的增删改查操作,重点是完成功能的实现。每个类核心要点方法如下所示: :-: ![](.topwrite/assets/image_1664129682174.png) :-: 图1 UserList中的核心业务方法 :-: ![](.topwrite/assets/image_1664129690879.png) :-: 图2 CarsList中的核心业务方法   # 1.7 重难点解析 1.数组可以存储基本数据类型和对象 2. 数组长度固定 3. 定义数组时必须指定数组元素类型 4. 不能直接获取数组中实际存储元素的个数,length用来获取数组的长度。 本系统没有涉及太复杂的业务逻辑,只是实现简单的增删改查操作。 # 1.8 关键代码 # 1.9 案例总结 本案例是基于数组实现对数据在内存中的存储,相当来说比较简单,需要每位同学都能熟练掌握,里面涉及流程控制和面向对象程序设计的思想,比较容易掌握。 ::::tabs :::tab[汽车销售系统] 汽车销售系统 ::: :::tab[参考代码] 暂无提供代码 ::: ::::