반응형
Notice
Recent Posts
Recent Comments
Link
관리 메뉴

bro's coding

java.분석 설계 본문

[IT]/java

java.분석 설계

givemebro 2021. 3. 2. 10:57
반응형

엔지니어 Engineer : 사원번호 empNo, 사원명 name, 월급 salary, 주기술 skill 의 정보로 구성
매니저 Manager : 사원번호 empNo, 담당부서명 department, 월급 salary, 사원명 name 의 정보로 구성
비서 Secretary : 사원번호 empNo, 상관명 nameOfBoss, 월급 salary, 사원명 name 의 정보로 구성

> Class Diagram

package step3;
// 부모 클래스 (super class)
public class Employee { // extends Object
	private String empNO;
	private String name;
	private int salary;
	public Employee(String empNO, String name, int salary) {
		super();// 최상위 Object 객체를 생성
		this.empNO = empNO;
		this.name = name;
		this.salary = salary;
	}
	public String getEmpNO() {
		return empNO;
	}
	public void setEmpNO(String empNO) {
		this.empNO = empNO;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public int getSalary() {
		return salary;
	}
	public void setSalary(int salary) {
		this.salary = salary;
	}
	
}

 

 

package step3;

public class Manager extends Employee{
	private String department;

	public Manager(String empNO, String name, int salary, String department) {
		// super 생성자 호출로 Employee 요소 정보를 할당
		super(empNO, name, salary);
		this.department = department;
	}

	public String getDepartment() {
		return department;
	}

	public void setDepartment(String department) {
		this.department = department;
	}
	
}

 

package step3;

public class Secretary extends Employee{
	private String nameOfBoss;

	public Secretary(String empNO, String name, int salary, String nameOfBoss) {
		super(empNO, name, salary);
		this.nameOfBoss = nameOfBoss;
	}

	public String getNameOfBoss() {
		return nameOfBoss;
	}

	public void setNameOfBoss(String nameOfBoss) {
		this.nameOfBoss = nameOfBoss;
	}
	
}

 

package step3;

public class Engineer extends Employee{
	private String skill;

	public Engineer(String empNO, String name, int salary, String skill) {
		super(empNO, name, salary);
		this.skill = skill;
	}

	public String getSkill() {
		return skill;
	}

	public void setSkill(String skill) {
		this.skill = skill;
	}
	
}

 

 

package step3;

public class TestSuper3 {
	public static void main(String[] args) {
		Employee e = new Employee("123","아이유",500);
		System.out.println(e.getEmpNO()+" "+ e.getName()+" "+e.getSalary());
		
		Manager m = new Manager("124","윤여정",700,"기획부");
		System.out.println(m.getEmpNO()+" "+m.getName()+" "+m.getSalary()+" "+m.getDepartment());
		
		
		Secretary s= new Secretary("135","조인성",900,"윤여정");
		System.out.println(s.getEmpNO()+" "+s.getName()+" "+s.getSalary()+" "+s.getNameOfBoss());
		Engineer eg = new Engineer("321", "길", 200, "노래");
		System.out.println(eg.getEmpNO()+" "+eg.getName()+" "+eg.getSalary()+" "+eg.getSkill());
	}
}

/*
123 아이유 500
124 윤여정 700 기획부
135 조인성 900 윤여정
321 길 200 노래
*/
반응형

'[IT] > java' 카테고리의 다른 글

java.annotation(어노테이션)  (0) 2021.03.02
java.overriding.toString  (0) 2021.03.02
java.Object(오브젝트 클래스)  (0) 2021.03.02
java.Overriding(메서드 오버라이딩)  (0) 2021.03.02
java.super/this  (0) 2021.02.26
java.Access Modifier(접근 제어자)  (0) 2021.02.26
java.Inheritance(상속)  (0) 2021.02.26
java.overloading(오버로딩)  (0) 2021.02.26
Comments