public class Variable1 {
int num; //인스턴스 변수
static int snum; // 클래스 변수
public void method(String s){
String st = s; //매개변수 s와 메서드내에 선언된 st는 로컬객체
}
public void othermethod(){
System.out.println(++num);
System.out.println(++snum);
//System.out.println(st); // 로컬변수, 로컬객체는 참조 불가!!!
}
public static void main(String[] args) {
// System.out.println(++num); // 인스턴스변수 직접 참조 불가
Variable1 v1= new Variable1();
v1.num*=3;
System.out.println(++snum); // 클래스변수는 static 메서드 내에서 직접 참조 가능!!
System.out.println(Variable1.snum); // 원래 이렇게 하는게 가장 합리적인방법임
}
}