Static 메서드와 인스턴스 메서드
-> iv 사용여부에 따라 갈림
Class MyMath2 {
long a, b; // -> 인스턴스 변수 : iv
long add() { // 인스턴스 메서드 (iv 사용)
return a + b; // iv
}
static long add (long a, long b // -> 지역변수 : lv) ) { // 클래스 메서드( = static 메서드) (iv 사용X)
return a + b; // lv
}
}
인스턴스 메서드
- 인스턴스 생성 후, '참조변수.메서드이름()'으로 호출
- 인스턴스 멤버 (iv, im)과 관련된 작업을 하는 메서드
- 메서드 내에서 인스턴스 변수 (iv) 사용가능
Static 메서드 (클래스 메서드)
- 객체생성없이 '클래스 이름.메서드이름()' 으로 호출
- 인스턴스 멤버 (iv, im)과 관련없는 작업을 하는 메서드
- 메서드 내에서 인스턴스 변수 (iv) 사용불가
> 객체생성 없이 호출 가능한 메서드
Static 을 언제 붙여야 할까?
> 속성 ( 멤버 변수 ) 중에서 공통 속성에 static을 붙인다.
> 인스턴스 멤버 (iv, im)을 사용하지 않는 머세드에 static을 붙인다.
'자바의 정석 - 기초편' 카테고리의 다른 글
생성자, 기본 생성자 (1) | 2022.08.08 |
---|---|
오버로딩 (overloading) (2) | 2022.08.08 |
기본형 매개변수 (0) | 2022.08.08 |
호출 스택 (call stack) - 중요! (0) | 2022.08.05 |
Return 문, 반환값 (0) | 2022.08.05 |