모바일소프트웨어/자바
Static변수와 객체생성의 관계
백수진
2021. 10. 1. 14:02
우선, 위의 코드에 대한 error이유는 static으로 정의되어있지 않은 method를 객체를 생성하지 않고 사용했기 때문이다.
<Static과 객체생성의 관계>
Static : 이미 static으로 정의시에 공간을 할당해줌. 따라서 객체를 생성해서 따로 재설정할 필요가 없음. => new를 사용하지 않아야함. 이미 그 공간이 할당되어있기때문이다.
static : 이미 그 공간이 할당되어있기에 새로운 객체를 생성할 필요가 없음. 따라서 class명.method를 사용해 메서드호출 혹은 class명.변수명을 사용해 static변수를 호출해 바로 사용할 수 있다 => 객체를 만들지 않아야함.
static이 없을 때 : new를 사용해 class로 정의해 놓은 설계도로 객체를 생성해 method나 변수를 사용할 수 있다음. => 객체를 만들어서 사용해야함.
STATIC과 객체선언의 관계 정리
STATIC "0" | 객체 선언이 필요없음. this사용불가 |
STAITC "X" | 객체 선언이 필요함(new의 활용). this 사용가능 |