정의 : 변수를 선언하고 값을 저장하는 것
- 멤버변수( 인스턴스 변수, 클래스 변수 )
초기화를 하지 않아도 자료형에 맞는 기본값을 초기화가 된다.- 지역변수
사용하기 전에 반드시 초기화해야 한다.class Main { int i; //인스턴스 변수 int j = i; //인스턴스 변수 void method1(){ int a; //지역변수 int b=a; //error 지역변수 } }명시적 초기화
- 변수를 선언과 동시에 초기화 하는 것
- 가장 기본적이고 간단한 방법
- 복잡한 초기화 작업에는 초기화 블럭이나 생성자 사용
int x = 0;초기화 블럭
클래스 내에 { } 블럭안에 코드를 작성하면 된다
- 클래스 초기화 블럭
- 클래스 변수의 복잡한 초기화에 사용된다.
- 인스턴스 초기화 블럭
- 인스턴스 변수의 복잡한 초기화에 사용된다.
순서보기
class Main { public static void main(String[] args) { System.out.println("Example 객체 생성"); Example e = new Example(); } } class Example{ Example(){ System.out.println("생성자"); } static { System.out.println("클래스 변수 초기화 블럭"); }; { System.out.println("인스턴스 변수 초기화 블럭"); } } //출력 : Example 객체 생성 클래스 변수 초기화 블럭 인스턴스 변수 초기화 블럭 생성자