기록

학원 DAY12. 변수의 종류

devcorn3 2022. 10. 1. 23:44

변수의 종류는 총 4가지이다. 

멤버변수, 정적변수, 매개변수, 지역변수

 

멤버변수, 인스턴스 변수, 프로퍼티, 속성

- 접근제한자를 붙일 수 있다. (멤버변수와 정적변수에만 붙일 수 있다.)

- 객체 생성 이후에 참조변수를 통해서 사용가능하다. ex) SampleApp app = new SampleApp();     app.x = 100;

- 생성된 객체 내부에 존재한다.

- 객체가 존재하는 동안 계속 유지된다.

- 모든 생성자, 모든 멤버 메소드에서 사용가능하다. (정적메소드에서는 사용안됨)

 

정적변수, 클래스변수

public static final double DEPOSITE_RATE = 0.031;

- 접근제한자를 붙일 수 있다.

- 클래스가 로딩되면 즉시 사용가능하다.

- 클래스 로딩 후 사용가능해진 정적변수는 프로그램이 종료될 때까지 유지된다. (객체보다는 오래 유지됨)

- 모든 생성자, 모든 멤버 메소드, 모든 정적 메소드에서 사용가능하다.

 

매개변수

public void expire(String date, int amount) {

// 매개변수는 메소드 실행시 인자로 전달된 값을 저장하는 변수.

// 매개변수에는 접근제한자, static을 붙일 수 없다.

// 매개변수에 저장된 값을 메소드 블록에서 사용가능하다.

// 매개변수는 메소드가 종료되면 즉시 사라진다.

int amount = (int) (balance*DEPOSITE_RATE) + balance;

System.out.println("예상 예지금액: “ + amount);

}

 

int amount 지역변수이다.

- 지역변수는 메소드 안에서 정의된 변수.

- 지역변수는 접근제한자, static을 붙일 수 없다.

- 지역변수는 변수가 선언된 다음 행부터 사용가능하다.

- 지역변수는 그 변수가 선언된 블록이 닫히거나, 메소드가 종료되면 즉시 사라진다.