1.分类思想
package->class
- domain->Xx类:标准类,封装键盘录入的基本信息
- dao->XxDao类:用于访问存储数据的数组集合,即和数据库直接交互类
- service->XxService类:用来进行业务的逻辑处理
- controller->XxController类:和用户打交道
- entry->XxxEntry类:程序的入口类,提供一个main方法
2.分包思想
- 不同类文件放到不同的包下,包即相当于文件夹
- 命名规则:字母都是小写,多级包-公司网站地址翻转
2.1 类与类之间的访问
- 同一个包下:不需要访问,直接导包
- 不同包下:import导包后访问或通过全类名(包名+类名)访问
3. 应用场景:多个包下出现相同的类名称
3.使用IDEA
- 新建empty project,取名Xxx
- 在Xxx下new module,选择Java,选择Java版本,取名xxxx
- 如果没有iml文件,
- java class默认在src下,如果要在src下的package下,需要用“package+路径名”声明
4.学生老师信息管理系统实操
需求说明:(代码逻辑只会展示学生,老师是一样的)
-
添加学生:键盘录入学生信息(id、name、age、birthday),使用数组存放学生信息,要求学生的id不能重复
-
删除学生:键盘录入要删除学生的id值,将该学生从数组中移除,如果录入的id在数组中不存在,需要重新录入
-
修改学生:键盘录入学生的id值和修改后的学生信息,将数组中该学生的信息修改,如果录入的id在数组中不存在,则需要重新录入
-
查询学生信息:将数组中存储的所有学生的信息输出到控制台
-
添加老师:键盘录入老师信息(id、name、age、birthday),使用数组存放老师信息,要求老师的id不能重复
-
删除老师:键盘录入要删除老师的id值,将该老师从数组中移除,如果录入的id在数组中不存在,需要重新录入
-
修改老师:键盘录入老师的id值和修改后的老师信息,将数组中该老师的信息修改,如果录入的id在数组中不存在,则需要重新录入
-
查询老师信息:将数组中存储的所有老师的信息输出到控制台
代码
增删改查的逻辑后续再补哈哈哈哈哈哈我太拖啦
被Static修饰的成员会被该类所有对象共享
被Static修饰的成员会随着类的加载而加载,优先于对象而存在
被Static修饰的成员可以使用“类名+.”的方式被调用
- break只能跳出当前switch语句,如果想要跳出指定循环语句,只需要在循环语句前加一个标号即可
lo:while(true){
switch(){
case 1:
break lo;
}
}
又或者是使用System,exit(0)语句,表示退出当前正在运行的JVM虚拟机
分包分析
- 用户逻辑有关的代码应该放在Controller类中。
main
package com.bianting.Administration.entry;
import com.bianting.Administration.controller.StudentController;
import com.bianting.Administration.controller.TeacherController;
import java.util.Scanner;
/**
* Created by 边婷
* on 2024/1/7 17:41
*
* 添加学生:键盘录入学生信息(id、name、age、birthday),使用数组存放学生信息,要求学生的id不能重复
* 删除学生:键盘录入要删除学生的id值,将该学生从数组中移除,如果录入的id在数组中不存在,需要重新录入
* 修改学生:键盘录入学生的id值和修改后的学生信息,将数组中该学生的信息修改,如果录入的id在数组中不存在,则需要重新录入
* 查询学生信息:将数组中存储的所有学生的信息输出到控制台
* */
public class Administration {
public static void main(String[] args) {
// 1. 创建Scanner对象
Scanner sc = new Scanner(System.in);
// 进入不同的端系统
while (true) {
// 搭建主菜单
System.out.println("********************************************************");
System.out.println("欢迎进入学生教师信息管理系统");
System.out.println("********************************************************");
System.out.println("请选择您要进入的端系统号:1-学生端;2-教师端;0-退出系统");
System.out.println("********************************************************");
System.out.println("请输入端系统号:");
String systemPortNum = sc.next();
switch (systemPortNum) {
case "1":
StudentController studentController = new StudentController();
studentController.start();
break;
case "2":
TeacherController teacherController = new TeacherController();
teacherController.start();
break;
case "0":
//System.out.println("T0");
System.exit(0);
break;
default:
System.out.println("您输入的信息有误,请重新输入");
break;
}
}
}
}
Co