본문 바로가기

Archived(CSE Programming)/Java

Java 멤버 변수, 접근제어자

1. Java 멤버 변수

멤버 변수는 Class 내부에 선언이 되어있는 변수를 뜻한다.

이러한 멤버 변수는 다시 Class 변수와 Instance 변수로 구분을 한다.

https://itmining.tistory.com/20

Class 변수는 해당 Class내에서 공유하는 변수를 뜻한다. 그래서 클래스가 메모리에 올라가는 시기에 생성이 되어 Class의 Instance로도 접근이 가능하며 Class 자체로도 접근이 가능하다.

 

반면에 Instance 변수는 클래스의 인스턴스 별로 따로 저장하는 변수를 뜻한다. 그래서 인스턴스가 생성되는 시기에 생성이 되어 Instance 들마다 따로 접근이 가능하다.

 

지역 변수는 메소드 내에서 유효한 변수이다.

public class Member{
	static int claVariable = 20; // 클래스 변수
   	int insVariable; // 인스턴스 변수
    
	public static void main(String[] args){
          Member t1 = new Member();
          Member t2 = new Member();

          t1.insVariable = 5;
          t2.insVariable = 10;

          System.out.println(t1.insVariable); // 5
          System.out.println(t2.insVariable); // 10
          System.out.println(t1.claVariable); // 20
          System.out.println(t2.claVariable); // 20
    }
}

2. 접근제어자

private (같은 클래스 내에서만 접근 가능) 

default (같은 패키지 내에서만 접근 가능) 

protected (같은 패키지 내에서, 다른 패키지의 자식클래스에서 접근 가능)

public (접근 제한이 없음)


 - 외부로부터 데이터를 보호하기 위해서
 - 외부에는 불필요한, 내부적으로만 사용되는 부분을 감추기 위해서

 

[출처] [JAVA] 기초 이론 정리|작성자 44jopd

'Archived(CSE Programming) > Java' 카테고리의 다른 글

Java 컬렉션(Collection)  (0) 2019.11.03
Java 추상클래스, 인터페이스  (0) 2019.11.03
Java 오버로딩과 오버라이딩  (0) 2019.11.02
Java 언어의 특징  (0) 2019.11.02
Java 자료형  (0) 2019.10.31