Static 키워드는 언제 사용하나요?

각 객체들이 공통적으로 사용해야하는 변수, 메소드에 static키워드를 붙여 공통적으로 사용하게 할 수 있다.

<br/>

Static의 특징

static 키워드가 붙은 변수는 객체를 생성 하지 않아도 사용 할 수 있다.

static 키워드는 클래스가 로딩 시에 멤버가 생성되고 객체의 멤버는 객체 생성시에 생성된다.

그렇기 때문에 static 키워드 메소드안에서 아직 생성됬는지 알 수 없는 객체의 변수를 사용 할 수 없다.

즉 static 키워드가 붙은 메소드에서는 static 키워드가 붙은 변수, 메소드만 사용 할 수있다.

<br/>

Static의 장점

static 키워드가 붙은 멤버는 정적바인딩을 하여 컴파일시에 결정되기 때문에,

추후 실행 시에 메소드 호출 명령에어 호출되어야 할 메소드를 찾는 과정이 없어지기 때문에 효율이 높아진다.

그럼 모두 static 키워드를 붙이면 효율이 높아지는가?

만약에 메소드가 객체의 멤버를 필요로 한다면, 위의 설명과 같이 static 키워드 메소드에서는 호출이 불가능 하기 때문에 static 키워드를 붙일 수 없다.

반대로 메소드가 객체의 멤버를 필요로 하지 않는다면, 가능하면 static 키워드를 붙이는 것을 고려하자.

<br/>

<br/>

0
이전 댓글 보기
등록
TOP