package mymain;
/*
◆ static 클래스 변수 정리
static : 프로그램 시작시 생성된다.
1. static 변수 : 클래스내의 객체간 공유변수
2. static : 메서드 : 객체 생성없이 사용가능 (Ex: Math.abs())
3. static class : inner class(내부클래스)에서 사용
4. static 초기화 :
*/
/*
변수
1. 인스턴스 변수 : 클래스내에 선언된 변수 (객체가 생성되면)
2. 클래스 변수(static 변수) : 선언되는 시점이 인스턴스 변수와 다르다.
프로그램 시작시 생성
3. 객체 생성없이 사용가능 (예: Math.abs());
4. 클래스 변수는 inner class(내부클래스)에서 사용된다.
*/
class ExStatic{
/*
인스턴스 변수는 객체를 생성하고 나서 사용할 수 있지만
클래스 변수는 객체 생성 없이 사용이 가능하다.
이미 프로그램 시작시 클래스 변수는 생성되어 있기 때문이다.
*/
// 인스턴스 변수
int a;
// 클래스 변수
// static이라도 접근제한자의 영향을 받는다.
// 즉, private static int static_a; 라고 접근제한자를 사용하면
// 외부에서 사용이 불가능하다.
static int static_a;
}
public class MyMain {
// static 초기화
// 가장먼저 실행된다.
// main 보다 먼저 실행된다.
static
{
System.out.println("(순서1) 내가 먼저 실행 돼");
System.out.println("(순서2) JDBC 라이브러리를 여기서 초기화 ");
}
public static void main(String[] args) {
// 클래스 변수라 객체 생성 없이 사용가능
ExStatic.static_a = 10;
System.out.println("(순서3)" + ExStatic.static_a);
}
}
'Programming > JAVA' 카테고리의 다른 글
익명 클래스 예 (0) | 2013.07.25 |
---|---|
JAVA 배열 기초 예문 (0) | 2013.07.19 |
생성자 개념 정리 및 생성자 오버로딩 예문 (0) | 2013.07.17 |
메소드 호출 방식에 따른 분류 (0) | 2013.07.17 |
가변인수 (ellipsis) 기초 예문 (0) | 2013.07.17 |