1> 변수의 초기화란?
    선언된 변수에 최초로 값을 할당하는 것.
   즉, 멤버변수로 선언시 프로그래머가 초기값을 주지 않는경우 자동적으로 값이 할당되는 것.
지역변수는 해당이 안됨.
2> 변수의 종류-- 멤버변수와 지역변수
자바에서 변수로는 멤버변수(=전역변수)와 로컬변수(지역변수) 두 종류가 있다. 
| 멤버변수(Member Variable) | 로컬변수(local Variable) | 
| 선언부분 | 클래스내 | 메소드내 | 
| 사용범위 | 해당 클래스내 전체 | 선언된 해당 메소드내 | 
| 초기화 | 자동초기화 | 안됨.프로그래머가 직점 초기값을 할당.
 | 
3> 기본 데이터형의 초기값 
| 데이터형 | 기본초기값 | 
| boolean | false | 
| char  | '\u0000' | 
| byte, short, int, long | 0 | 
| float | 0.0f | 
| double | 0.0 | 
| object  | null | 
4> 초기화 예제
㉠ Variable_init .java
| 
1 : class Variable_init
 2 : {
 3 :   public static void main(String[] args)
 4 : {
 5 :     int x;//x는 main메소드 안에 선언되어 있으므로 지역변수...
 6 :     //x=0;
 7 :     System.out.println(x);
 8 :   }
 9 : }
 
 | 
| << 실행 결과 >>
 
에러가 난다. 그 이유는 변수 x는 main메소드 안에 선언되어 있으므로 지역변수이다. 따라서 자동초기화가 안된다. 따라서 6번라인에서 x에 값을 할당해 주면 에러가 제거된다. | 
㉡ Variable_init2 .java
| 
1 : class Variable_init2
 2 : {
 3 :    static boolean b;
 4 :    static int x;
 5 :    static float f;
 6 :
 7 :   public static void main(String[] args)
 8 :   {
 9 :       System.out.println("변수 b의 초기값은 : "+b);
 10 :     System.out.println("변수 x의 초기값은 : "+x);
 11 :     System.out.println("변수 f의 초기값은 : "+f);
 12 :    }
 13 : }
 
 | 
| << 실행 결과 >>
 
변수 b의 초기값은 : false변수 x의 초기값은 : 0
 변수 f의 초기값은 : 0.0
 변수 b,x,f는 메소드내에 선언된 것이 아니므로 멤버변수들이다. 따라서 프로그래머가 초기값을 할당해 주지 않아도 기본값이 할당된다.  여기서 static이란 키워드가 사용되었는데 이는 객체를 생성하지 않아도 변수를 사용할 수 있게 해주는데 지금은 그렇다는 것만 알고 있자. | 
클래스 변수와 지역변수, 정적변수등 초기화에 대해 명확히 기억하지 못하고 대충 그럴것이다 생각했었는데
다시한번 보고 넘어가자는 의미에서 정리하였다..
출처:
http://www.it-bank.or.kr/prom/java_main.htm