当前位置: 首页 > news >正文

快手流量推广免费网站网站关键词排行查询

快手流量推广免费网站,网站关键词排行查询,中国造价工程建设监理协会网站,网站开发前端规范学生管理系统 文章目录 学生管理系统1. 系统设计1.1 系统架构1.2 模块划分 2. 系统实现2.1 数据模型2.2 接口设计2.3 功能实现2.4 主程序逻辑 3. 编码实现3.1 Menu3.2 Student3.3 StudentService-API3.4 StudentAddService3.5 StudentDeleteService3.6 StudentQueryService3.7 …

学生管理系统

文章目录

  • 学生管理系统
    • 1. 系统设计
      • 1.1 系统架构
      • 1.2 模块划分
    • 2. 系统实现
      • 2.1 数据模型
      • 2.2 接口设计
      • 2.3 功能实现
      • 2.4 主程序逻辑
    • 3. 编码实现
      • 3.1 Menu
      • 3.2 Student
      • 3.3 StudentService-API
      • 3.4 StudentAddService
      • 3.5 StudentDeleteService
      • 3.6 StudentQueryService
      • 3.7 StudentUpdateService
    • 4. 结果展示
      • 4.1 UI界面
      • 4.2 添加学生功能
      • 4.3 删除学生功能
      • 4.4 修改学生功能
      • 4.5 查看学生功能

1. 系统设计

1.1 系统架构

本系统采用分层架构设计,主要分为以下三层:

  1. 数据层:由Student类表示,用于存储学生的基本信息(如学号、姓名、年龄、家庭住址等)。
  2. 服务层:由StudentService接口及其实现类组成,负责实现系统的核心功能(如添加、删除、修改和查询学生信息)。
  3. 表现层:由Menu类实现,负责与用户交互并调用服务层的功能。

1.2 模块划分

系统功能被划分为以下四个模块:

  1. 添加学生模块:负责将学生信息添加到系统中。

在这里插入图片描述

  1. 删除学生模块:根据学号删除指定的学生信息。

在这里插入图片描述

  1. 修改学生模块:根据学号修改指定学生的信息。
    在这里插入图片描述

  2. 查询学生模块:显示系统中所有学生的信息。

在这里插入图片描述

2. 系统实现

2.1 数据模型

系统的数据模型由Student类表示,其属性包括:

  • id:学生的唯一标识(学号)。
  • name:学生的姓名。
  • age:学生的年龄。
  • address:学生的家庭住址。

Student类通过封装技术,提供了对属性的访问和修改方法,确保数据的安全性和完整性。

2.2 接口设计

系统通过StudentService接口定义了核心功能,包括:

  • addStudent:添加学生信息。
  • deleteStudent:删除学生信息。
  • updateStudent:修改学生信息。
  • queryStudent:查询学生信息。
  • contains:判断学号是否已存在。
  • getIndex:根据学号获取学生在列表中的索引。

2.3 功能实现

每个功能模块通过独立的类实现StudentService接口,具体如下:

  1. 添加学生模块StudentAddService):
    • 通过循环确保学号的唯一性。
    • 将学生信息封装为Student对象并添加到列表中。
  2. 删除学生模块StudentDeleteService):
    • 根据学号查找学生信息并删除。
  3. 修改学生模块StudentUpdateService):
    • 根据学号查找学生信息并修改其属性。
  4. 查询学生模块StudentQueryService):
    • 遍历学生列表并显示所有学生信息。

2.4 主程序逻辑

StudentSystem类作为系统的入口,负责与用户交互并调用相应的功能模块。通过Scanner类获取用户输入,并根据用户选择调用StudentService接口的实现类,完成相应的功能。

3. 编码实现

3.1 Menu

import java.util.ArrayList;
import java.util.Scanner;public class Menu {public static void main(String[] args) {ArrayList<Student> list = new ArrayList<>();// 使用接口类型声明服务对象StudentService addService = new StudentAddService();StudentService deleteService = new StudentDeleteService();StudentService updateService = new StudentUpdateService();StudentService queryService = new StudentQueryService();Scanner sc = 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("请输入您的选择:");String choose = sc.next();switch (choose) {case "1" -> addService.addStudent(list); // 调用添加学生功能case "2" -> deleteService.deleteStudent(list); // 调用删除学生功能case "3" -> updateService.updateStudent(list); // 调用修改学生功能case "4" -> queryService.queryStudent(list); // 调用查询学生功能case "5" -> {System.out.println("退出");System.exit(0);}default -> System.out.println("没有这个选项");}}}
}

3.2 Student

public class Student {private String id;private String name;private int age;private String address;// Getters and Setterspublic String getId() {return id;}public void setId(String id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public String getAddress() {return address;}public void setAddress(String address) {this.address = address;}
}

3.3 StudentService-API

import java.util.ArrayList;public interface StudentService {void addStudent(ArrayList<Student> list);void deleteStudent(ArrayList<Student> list);void updateStudent(ArrayList<Student> list);void queryStudent(ArrayList<Student> list);boolean contains(ArrayList<Student> list, String id);int getIndex(ArrayList<Student> list, String id);
}

3.4 StudentAddService

import java.util.ArrayList;
import java.util.Scanner;public class StudentAddService implements StudentService {@Overridepublic void addStudent(ArrayList<Student> list) {Student s = new Student();Scanner sc = new Scanner(System.in);String id;while (true) {System.out.println("请输入学生的id");id = sc.next();if (contains(list, id)) {System.out.println("id已经存在,请重新录入");} else {s.setId(id);break;}}System.out.println("请输入学生的姓名");s.setName(sc.next());System.out.println("请输入学生的年龄");s.setAge(sc.nextInt());System.out.println("请输入学生的家庭住址");s.setAddress(sc.next());list.add(s);System.out.println("学生信息添加成功");}@Overridepublic boolean contains(ArrayList<Student> list, String id) {return getIndex(list, id) >= 0;}@Overridepublic int getIndex(ArrayList<Student> list, String id) {for (int i = 0; i < list.size(); i++) {if (list.get(i).getId().equals(id)) {return i;}}return -1;}// 以下方法未使用,但需要实现接口@Overridepublic void deleteStudent(ArrayList<Student> list) {}@Overridepublic void updateStudent(ArrayList<Student> list) {}@Overridepublic void queryStudent(ArrayList<Student> list) {}
}

3.5 StudentDeleteService

import java.util.ArrayList;
import java.util.Scanner;public class StudentDeleteService implements StudentService {@Overridepublic void deleteStudent(ArrayList<Student> list) {Scanner sc = new Scanner(System.in);System.out.println("请输入要删除的id");String id = sc.next();int index = getIndex(list, id);if (index >= 0) {list.remove(index);System.out.println("id为:" + id + "的学生删除成功");} else {System.out.println("id不存在,删除失败");}}@Overridepublic int getIndex(ArrayList<Student> list, String id) {for (int i = 0; i < list.size(); i++) {if (list.get(i).getId().equals(id)) {return i;}}return -1;}// 以下方法未使用,但需要实现接口@Overridepublic void addStudent(ArrayList<Student> list) {}@Overridepublic void updateStudent(ArrayList<Student> list) {}@Overridepublic void queryStudent(ArrayList<Student> list) {}@Overridepublic boolean contains(ArrayList<Student> list, String id) {return false;}
}

3.6 StudentQueryService

import java.util.ArrayList;public class StudentQueryService implements StudentService {@Overridepublic void queryStudent(ArrayList<Student> list) {if (list.isEmpty()) {System.out.println("当前无学生信息,请添加后再查询");return;}System.out.println("id\t\t姓名\t年龄\t家庭住址");for (Student stu : list) {System.out.println(stu.getId() + "\t" + stu.getName() + "\t" + stu.getAge() + "\t" + stu.getAddress());}}// 以下方法未使用,但需要实现接口@Overridepublic void addStudent(ArrayList<Student> list) {}@Overridepublic void deleteStudent(ArrayList<Student> list) {}@Overridepublic void updateStudent(ArrayList<Student> list) {}@Overridepublic boolean contains(ArrayList<Student> list, String id) {return false;}@Overridepublic int getIndex(ArrayList<Student> list, String id) {return 0;}
}

3.7 StudentUpdateService

import java.util.ArrayList;
import java.util.Scanner;public class StudentUpdateService implements StudentService {@Overridepublic void updateStudent(ArrayList<Student> list) {Scanner sc = new Scanner(System.in);System.out.println("请输入要修改学生的id");String id = sc.next();int index = getIndex(list, id);if (index == -1) {System.out.println("要修改的id" + id + "不存在,请重新输入");return;}Student stu = list.get(index);System.out.println("请输入要修改的学生姓名");stu.setName(sc.next());System.out.println("请输入要修改的学生年龄");stu.setAge(sc.nextInt());System.out.println("请输入要修改的学生家庭住址");stu.setAddress(sc.next());System.out.println("学生信息修改成功");}@Overridepublic int getIndex(ArrayList<Student> list, String id) {for (int i = 0; i < list.size(); i++) {if (list.get(i).getId().equals(id)) {return i;}}return -1;}// 以下方法未使用,但需要实现接口@Overridepublic void addStudent(ArrayList<Student> list) {}@Overridepublic void deleteStudent(ArrayList<Student> list) {}@Overridepublic void queryStudent(ArrayList<Student> list) {}@Overridepublic boolean contains(ArrayList<Student> list, String id) {return false;}
}

4. 结果展示

4.1 UI界面

界面

4.2 添加学生功能

在这里插入图片描述

4.3 删除学生功能

在这里插入图片描述

4.4 修改学生功能

在这里插入图片描述

4.5 查看学生功能

在这里插入图片描述

http://www.dtcms.com/a/422001.html

相关文章:

  • 广州哪个大学做网站制作好些的做网站的 深圳
  • 楼盘网站建设案例品牌运营策略有哪些
  • 定制开发 商城网站 最快seo在线优化平台
  • 怎么做网站流量赚钱安徽动漫公司 网站制作 安徽网新
  • 建个人网站要花多少钱营销型网站建设需要多少钱
  • dhru商城网站建设wordpress 主题 制作
  • 平面设计教程网站员工信息管理系统源码
  • 成都定制网站建设稿定设计app下载
  • 合肥网站建设电话为什么投资公司不能注册了
  • 网站维护需要多久时间网站建设费用报价单
  • 2017网站开发主流工具php网站留言板是怎么做的
  • 制作个人网站要多少钱asp 茶叶网站模板
  • 网站建设中合作加盟的作用wordpress pdf 显示不了
  • 网站建设入驻网站关键字没有排名
  • 网站前置审批表搬瓦工一键WordPress
  • 大连做网站哪家便宜医院网站建设 费用
  • 企业内网网站网站建设地址 北京
  • 镇江牛吧企业网站建设与推广公司网站建设咨询公司地址
  • 邯郸做企业网站设计的公司双鱼儿 网站建设
  • 吉林省软环境建设办公室网站wordpress安装显示英文
  • 重庆企业网站推广流程北京网站建设开发
  • 产品介绍网站模板濮阳网站建设
  • wap网站的未来网站开发哪里有培训
  • 网站建设中左对齐wordpress 云储存插件
  • 乌审旗建设局网站网站首页结构布局
  • 做定制网站多少钱动叫建个网站刷排名
  • 论坛类的网站怎么做天创网站
  • 四川省微信网站建设推广关键词排名优化公司哪家强
  • 济南网站制作哪家专业我想创建一个网站自己玩玩
  • 韩都衣舍的网站建设网站后台源代码