package test;
import java.util.Scanner;
class Aircon {
int memvar;
static int staticVar;
}
public class test {
static int staticVar2 = 20;
public static void main(String[] args) throws Exception {
int localVar;
Aircon vk1 = new Aircon();
System.out.println("vk1.memVar" + vk1.memvar); //멤버 변수는 컴파일 시 0으로 자동으로 초기화 된다.
System.out.println("vk1.staticVar" + vk1.staticVar); //정적 변수 역시 0으로 자동으로 초기화 된다.
System.out.println("Aircon.staticVar" + Aircon.staticVar); //정적변수의 경우 Heap영역이 아닌 Class Area 영역에 존재한다.
System.out.println("staticVar : " + staticVar2); //같은 클래스 내부의 정적변수는 클래스를 사용하지 않아도 쓸 수 있다.
//System.out.println("localVar : " + localVar); //로컬 변수의 경우 초기화하지 않으면 컴파일 에러가 난다.
Aircon vk2 = new Aircon();
vk1.staticVar = 20;
System.out.println("vk2.staticVar : " + vk2.staticVar);
//스태틱변수는 Class Area내에 존재하기에 같은 클래스로 선언된 인스턴스 모두 공용으로 사용하게 된다.
}
}
'웹 프로그래밍 > Spring Framework' 카테고리의 다른 글
[JAVA] 가변 인자 메소드(Variable Method) (0) | 2014.06.08 |
---|---|
[JAVA] 메서드와 변수 응용 (0) | 2014.06.08 |
[JAVA] 기본적인 메소드(함수)선언 (0) | 2014.06.07 |
[JAVA] Javascript의 프로토타입 선언같은 것은 없나? (0) | 2014.06.07 |
[JAVA]객체 테스트 용 예제 (0) | 2014.06.07 |