인스턴스 변


● 클래스 내에서 선언됩니다. 메소드 내에서 선언되는 것이 아닙니다.


class horse{

             private double height = 15.2;

             private String breed;

             //나머지 코드...

}
 



지역변수



● 지역변수(local variable)는 메소드 내에서 선언됩니다.

class AddThing{

               int a;

               int b = 12;

      

               public int add() {

                      int total = a + b;

                      return total;

               }



 

● 단, 지역변수는 사용하기 전에 반드시 초기화해야 합니다.

class Foo{

    public void go() {

            int x;

            int z = x + 3; //초기화 하지 않았으므로 컴파일이 되지 않습니다.

     }

}
 

지역변수에는 기본값이 없습니다. 따라서 지역 변수를 초기화하기 전에 사용하려고 하면 컴파일 과정에서 오류가 납니다.