ex)
public class Main{
long a, b; // 인스턴스 변수 (클래스 전체에서 사용 가능)
long add() { // 메서드 이름에 static이 없으면 인스턴스 메서드
return a + b; // a, b는 매개변수가 없기 때문에 인스턴스 변수 사용
}
static long add(long a, long b) { // static 의 매개변수 a, b
// 메서드에 static이 있으면 static 메서드 (class 메서드)
return a + b; // a와 b는 매개변수를 받기 때문에 static 메서드의 지역변수다.
}
}
클래스 전체에서 사용가능
객체(인스턴스) 생성 후,
(호출) 참조 변수.메서드이름();
매개 변수가 없다
선언 된 위치부터 종료 될때 까지만 사용 가능한 지역 변수이다.
지역변수로 사용되기 때문에 인스턴스 변수는 사용 안 한다.
객체(인스턴스) 생성 없이,
(호출)클래스. 메서드이름();
매개 변수가 있다
Example ex = new Example();
참조변수 ex 생성 후, Example객체 생성 하고 참조변수에 대입
인스턴스 변수 사용 여부