Java/Java 이론

[JAVA] static 변수

2주녘 2023. 8. 3. 12:23
반응형
공통으로 사용하는 변수가 필요한 경우
  • 여러 인스턴스가 공유하는 기준 값이 필요한 경우
  • 학생마다 새로운 학번 생성
  • 카드회사에서 카드를 새로 발급할때마다 새로운 카드 번호를 부여
  • 회사에 사원이 입사할때 마다 새로운 사번 부여
  • 은행에서 대기표를 뽑을 경우 (2대 이상..)

static 변수는 공통적으로 사용하는 변수가 필요한 경우 사용한다.

static 변수 선언과 사용하기

필드와 메소드는 모두 정적(static) 멤버가 될 수 있다. 정적 필드와 정적 메소드로 선언하려면 static 키워드를 사용한다.

예를 들어 은행에서 사용하는 번호표를 출력하는 프로그램을 만든다고 생각해보자.

만약 두대 이상의 번호표 출력 프린트를 사용한다고 가정했을 때,

1번 프린터에서 번호표를 출력하고 2번 프린터에서 출력한다고 생각하면

번호가 차례대로 갱신이 되면서 출력이 되어야 한다.

 

[출력결과]

1 번 기기의 대기 순번은 : 1

1 번 기기의 대기 순번은 : 2

1 번 기기의 대기 순번은 : 3

1 번 기기의 대기 순번은 : 4

1 번 기기의 대기 순번은 : 5

1 번 기기의 대기 순번은 : 6

=======================

2 번 기기의 대기 순번은 : 7

2 번 기기의 대기 순번은 : 8

2 번 기기의 대기 순번은 : 9

2 번 기기의 대기 순번은 : 10

2 번 기기의 대기 순번은 : 11

2 번 기기의 대기 순번은 : 12

이처럼 대기순번을 공통적으로 공유하기 위해 static 변수를 사용하는 것을 알 수 있다.

즉, static 변수는 인스턴스에서 공통적으로 사용하는 영역임을 알 수 있다.

 

반응형