Java (6) - 학사 관리 시스템

JeJune Lee·2021년 8월 11일
0

Java

목록 보기
6/18

학사 관리 시스템

학사 관리 시스템을 한번 Java를 이용해서 구현해볼 것이다. 먼저 필요한 클래스들을 생각해보자. main에는 학사 관리 시스템 클래스가 있어야 할 것이다. 학사관리는 학생을 관리하는 시스템이므로 학생관련 클래스가 있어야 하고, 학생에대한 클래스엔 학생정보들이 있어야 한다. 물론 계속 업데이트 할 수 있어야한다.

학사관리 시스템 클래스 : StudentManager
학생 정보 클래스: Student

먼저 Student 클래스부터 설계해보자!

학생 정보 클래스

	private String name;
	private int age;
	private int studentNum;
	private String major;
	
	public Student(String name, int age, int studentNum, String major) {
		this.name = name;
		this.age = age;
		this.studentNum = studentNum;
		this.major = major;
	}
	
	public void updateInfo(int i, String info) {
		switch (i) {
		case 1:		// 이름 수정
			setName(info);
			break;

		case 2:		// 나이 수정
			setAge(Integer.parseInt(info));
			break;
			
		case 3:		// 학번 수정
			setStudentNum(Integer.parseInt(info));
			break;
			
		case 4:		// 전공 수정
			setMajor(info);
			break;
			
		}
	}

이름, 나이, 학번, 전공을 저장할 것이다. 먼저 생성자에 모두 this로 받아줘서 모두 초기화 하였다. 그리고 updateInfo() 메소드를 통해 입력받은 번호에 따라 수정 할 수 있게 해주었다.

게터와 세터

	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 int getStudentNum() {
		return studentNum;
	}

	public void setStudentNum(int studentNum) {
		this.studentNum = studentNum;
	}

	public String getMajor() {
		return major;
	}

	public void setMajor(String major) {
		this.major = major;
	}

당연히 여기에서도 게터와 세터를 통해 값을 얻어주고 retrun 해준다!

메인 클래스

import java.util.ArrayList;

public class StudentManager {
	
	ArrayList<Student> students = new ArrayList<Student>();
    
	public static void main(String[] args) {
		
		StudentManager studentManager = new StudentManager();
		
		studentManager.addStudent("홍길동", 22, 20123487, "영극영화");
		studentManager.addStudent("홍길순", 24, 20106428, "수학과");
		studentManager.addStudent("이은경", 21, 20135788, "국문과");
		studentManager.addStudent("김철수", 23, 20114221, "체육과");
		studentManager.addStudent("김순희", 26, 20089883, "무용과");
		
	}
	
	private void addStudent(String name, int age, int studentNum, String major) {
		students.add(new Student(name, age, studentNum, major));
		System.out.println(name + " 학생 정보 입력 성공!!");
	}
}

여기서 ArrayList라는 것이 나오는데 배열과 비슷하게 생각하면 된다. 그리고 <Student.>라는 것은 students라는 배열에 Student객체들을 담을 것이라는 것이다. 그 다음 main 클래스에서 생성자를 통해 객체를 생성한다음 객체에 하나하나 정보들을 넣어주는 것이다. 우리가 정해놓은 변수들 순서대로 넣어주면 끝인 것이다!! 그리고 addStudent라는 것을 통해 학생 객체에 정확히 값이 들어갔다면 그 객체의 이름과 "학생 정보 입력 성공!!"이라는 문구를 같이 출력해줄 것이다.

오늘은 여기까지..

다소 생소한 것이 하나 등장했는데 ArrayList였다. 이것은 이미 C++에서 한번 마추쳐봐서 배울 땐 어려웠는데 이해하고 공부하면 편리한 기능중 하나로 사용된다. 처음 학사관리 시스템을 만들어 봤을때는 Java의 이점을 어느정도 배울 수 있는 느낌이였다. 역시 Java는 재미있다.

profile
Being Server developer

0개의 댓글