컴퓨터공학 💻 도서관📚

Part 2. 2-16 static 변수 본문

✅🌲강의 복습 노트/패캠 JavaSpring 강의,코드 복습

Part 2. 2-16 static 변수

들판속초록풀 2022. 11. 30. 11:29

Employee.java (Employee 클래스)

package ch16;

public class Employee {
    public static int serialNum = 1000;    //static 변수

	//Employee 객체의 멤버변수(특성)
    private int employeeId;             //직원 번호
    private String employeeName;	//직원 이름
    private String department;		//직원 근무지

    public Employee()              //생성자 선언
    {
	    serialNum++;			   //회사원이 입사할 때마다 새로운 사번 부여하기
	    employeeId = serialNum;   //static 변수는 공공재이므로 회사원마다 다른 사번을 부여하기 위해
    }                                   //인스턴스 변수를 생성할 때 그때의 변수값을 Id에 저장해주기

    public int getEmployeeId(){     //1-1번--Id 출력용 함수: employeeId 변수가 private 이기 때문이다.
        return employeeId;
    }
    public void setEmployeeId(int employeeId){   //1-2번--Id 입력용 함수
        this.employeeId = employeeId;
    }
    public String getEmployeeName(){   //2-1번
        return employeeName;
    }
    public void setEmployeeName(String employeeName){  //2-2번
        this.employeeName = employeeName;
    }
    public String getDepartment(){  //3-1번
        return department;
    }
    public void setDepartment(String department){  //3-2번
        this.department = department;
    }
}

 

 

 

EmployeeTest.java (EmployeeTest 클래스)

package ch16;

public class EmployeeTest {
    public static void main(String[] args){            //main 함수--static으로 선언해서 공공재이다.
        Employee employeeLee = new Employee();		   //인스턴스 변수 선언 = new 생성자
        employeeLee.setEmployeeName("유지영");          //메서드 이용
        employeeLee.setEmployeeId(134);
        employeeLee.setDepartment("목동");
        System.out.println(employeeLee.getEmployeeName());    //메서드 반환값 출력

        Employee employeeKim = new Employee();         //직원 Kim
        employeeKim.setEmployeeName("김유신");
        employeeKim.setEmployeeId(142);
        employeeKim.setDepartment("상암");
        System.out.println(employeeKim.getDepartment());


        employeeKim.serialNum++;     //static 변수 활용 예시(공공재 변수)

        System.out.println(employeeLee.serialNum);   //static 변수 참조는 클래스 이름으로 직접 참조
        System.out.println(employeeKim.serialNum);
    }
}

 

Comments