Java/chapter2

ch09 Employee

낭구리 2021. 8. 25. 17:51
package ch09;



public class Employee {
	
	public static int serialNum = 1000;
	
	private int employeeId;
	private String employeeName;
	private String department;
	
	public Employee(String employeeName) {
		serialNum++;
		employeeId = serialNum;
		this.employeeName = employeeName;
	}


	//문제 1. getEmployeeId
	//문제 2. getEmployeeName
	//문제 3. getDepartment

	
	public int getEmployeeId() {
		return employeeId;
	}

	public String getEmployeeName() {
		return employeeName;
	}
	public String getDepartment() {
		return department;
	}
	//static 메서드 활용
	public static int getSerialNum() {
		//컴파일할때 쓰지 못하도록 설정이되어있다.
//		department = "홍보팀";
		return serialNum;
		//주의 static 메서드 안에서는 멤버변수를 사용할 수없다.
		//why: 객체가 만들어지기 전에 접근해서 사용할 수있는 static이기 때문입니다.
	}
}

 

package ch09;

public class MainTest2 {

	public static void main(String[] args) {

		// static은 클래스 이름으로 접근 가능하다.
		int tempNumber = Employee.getSerialNum(); // new해서 안올리고 static을 실행시킬수있다. static은 heap영역이 아니라 독자적인 영역이있기때문
		System.out.println(tempNumber); //	System.out.println 또한  Static이라  new를 사용하지않아도 사용이가능

		Employee employee1 = new Employee("이순신");
		Employee employee2 = new Employee("김유신");
		Employee employee3 = new Employee("티모");

		System.out.println(employee1.getEmployeeId());
		System.out.println(employee2.getEmployeeId());
		System.out.println(employee3.getEmployeeId());

	}

}

'Java > chapter2' 카테고리의 다른 글

ch09 FormainTest3  (0) 2021.08.26
ch09 Company  (0) 2021.08.25
ch09 NumberPrinter  (0) 2021.08.25
ch08 Person this란?  (0) 2021.08.25
ch07 Hero  (0) 2021.08.25