본문 바로가기
Java/└ [JAVA] Practice

UML

by 박채니 2022. 4. 13.


- 사원정보 관리용 클래스
- Field 작성 : 캡슐화 반드시 적용함

사번 : - empNo:int
이름 : - empName:String
소속부서 : - dept:String
직급 : - job:String
나이 : - age:int
성별 : - gender:char
급여 : - salary:int
보너스포인트 : - bonusPoint:double
핸드폰 : - phone:String
주소 : - address:String

Employee 클래스의 메소드 작성
1. 키보드입력용 메소드 : empInput()
2. emp객체 모든 필드 출력용 메소드 : empOutput()
3. getter/setter메소드

public class Employee {
	private int empNo;
	private String empName;
	private String dept;
	private String job;
	private int age;
	private char gender;
	private int salary;
	private double bonusPoint;
	private String phone;
	private String address;
	
	//새 사원 정보 입력
	public void empInput() {
		Scanner sc = new Scanner(System.in);
		
		System.out.print("> 사번을 입력하세요 : ");
		empNo = sc.nextInt();
		System.out.print("> 이름을 입력하세요 : ");
		empName = sc.next();
		sc.nextLine();
		System.out.print("> 소속부서를 입력하세요 : ");
		dept = sc.nextLine();
		System.out.print("> 직급을 입력하세요 : ");
		job = sc.next();
		System.out.print("> 나이를 입력하세요 : ");
		age = sc.nextInt();
		System.out.print("> 성별을 입력하세요 : ");
		gender = sc.next().charAt(0);
		System.out.print("> 급여를 입력하세요 : ");
		salary = sc.nextInt();
		System.out.print("> 보너스포인트를 입력하세요 : ");
		bonusPoint = sc.nextDouble();
		System.out.print("> 핸드폰 번호를 입력하세요 : ");
		phone = sc.next();
		sc.nextLine();
		System.out.print("> 주소를 입력하세요 : ");
		address = sc.nextLine();
	}
	
	//사원 정보 출력
	public void empOutput() {
		System.out.println("사번 : " + empNo + ", 이름 : " + empName);
		System.out.println("소속부서 : " + dept + ", 직급 : " + job);
		System.out.println("나이 : " + age + ", 성별 : " + gender);
		System.out.println("급여 : " + salary + ", 보너스 포인트 : " + bonusPoint);
		System.out.println("핸드폰 번호 : " + phone);
		System.out.println("주소 : " + address);
	}

	public int getEmpNo() {
		return empNo;
	}
	public void setEmpNo(int empNo) {
		this.empNo = empNo;
	}

	public String getEmpName() {
		return empName;
	}
	public void setEmpName(String empName) {
		this.empName = empName;
	}

	public String getDept() {
		return dept;
	}
	public void setDept(String dept) {
		this.dept = dept;
	}

	public String getJob() {
		return job;
	}
	public void setJob(String job) {
		this.job = job;
	}

	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}

	public char getGender() {
		return gender;
	}
	public void setGender(char gender) {
		this.gender = gender;
	}

	public int getSalary() {
		return salary;
	}
	public void setSalary(int salary) {
		this.salary = salary;
	}

	public double getBonusPoint() {
		return bonusPoint;
	}
	public void setBonusPoint(double bonusPoint) {
		this.bonusPoint = bonusPoint;
	}

	public String getPhone() {
		return phone;
	}
	public void setPhone(String phone) {
		this.phone = phone;
	}

	public String getAddress() {
		return address;
	}
	public void setAddress(String address) {
		this.address = address;
	}	
}

 

public class EmpTest {
	Employee emp = null;
	
	public static void main(String[] args) {
		EmpTest et = new EmpTest();
		et.mainMenu();
	}
	
	public void mainMenu() {
		Scanner sc = new Scanner(System.in);
		
		while(true) {
			System.out.print("***** 사원 정보 관리 프로그램 *****\n"
					+ "1. 새 사원 정보 입력\n"
					+ "2. 사원 정보 삭제\n"
					+ "3. 사원 정보 출력\n"
					+ "9. 끝내기\n"
					+ "*******************************\n"
					+ "번호 선택 : ");
			String input = sc.next();
			
			switch(input) {
			case "1": 
				emp = new Employee();
				emp.empInput(); break;
			case "2": 
				emp = null; 
				System.out.println("사원 정보 삭제 완료"); break;
			case "3": 
				if(emp == null) {
					System.out.println("사원 정보를 먼저 입력하세요.");
					break;
				}
				emp.empOutput();
				break;
			case "9": System.out.println("프로그램을 종료합니다."); return;
			default : System.out.println("잘못 입력하셨습니다."); break;
			}
		} 
	}
}

'Java > └ [JAVA] Practice' 카테고리의 다른 글

[실습문제] 중첩 반복문, 2차원 배열  (0) 2022.04.13
[실습문제] 배열  (0) 2022.04.13
[실습문제] 반복문, 분기문  (0) 2022.04.11
[실습문제] switch, for문  (0) 2022.03.15
[실습문제] 난수, 조건문  (0) 2022.03.10