반응형
오늘은 자바(Java)에서의 접근 제한자(Access Modifier)에 대해서 알아보겠습니다. 접근 제어자는 클래스 내부와 외부 및 인터페이스, 변수 등의 접근을 제어하는 역할을 갖고 있습니다. 상황에 따라서 클래스 혹은 인터페이스를 다른 패키지에서 사용하지 못하도록 막을 수도 있고, 반대로 사용할 수 있게끔 만들 수 있습니다.
접근 제한자는 총 3가지로 public, protected, private의 종류가 있고 접근 제한자를 생략하는 경우에 설정되는 default 접근 제한자가 있습니다.
- public 접근 제한자: 외부 클래스가 자유롭게 사용할 수 있음
- protected 접근 제한자: 같은 패키지 또는 자식 클래스에서 사용할 수 있음
- private 접근 제한자: 같은 패키지의 외부에서도 사용할 수 없음
- default 접근 제한자: 같은 패키지에 소속된 클래스에서만 사용할 수 있음
우선 접근 제한자를 자세히 알아보기 전에 접근 제한자의 특징을 확실히 알고가기 위해서 임의의 패키지 2개를 생성했다고 가정하고 시작하겠습니다.
1. default 접근 제한자
⑴ 같은 패키지 내에서만 허용
⑵ 같은 패키지 내의 다른 클래스에서 허용
⑶ 다른 패키지에서는 불가 (package1에서 사용한 걸 package2에서 사용 불가능)
2. public 접근 제한자
⑴ 모든 패키지에서 접근 허용(package1에서 사용한 걸 package2의 클래스에서 사용 가능)
3. protected 접근 제한자
⑴ 같은 클래스 내에서 허용
⑵ 같은 패키지의 다른 클래스에서 허용
⑶ 다른 패키지의 자식 클래스에서 허용
⑷ 다른 패키지의 다른 클래스는 불가
4. private 접근 제한자
⑴ 같은 클래스에서의 같은 클래스에서만 허용
반응형
'개발 & 데이터베이스 > JAVA' 카테고리의 다른 글
[JAVA] 자바 JDK, JRE의 차이점과 사용자 디렉터리 구성 요소 (0) | 2022.08.08 |
---|---|
[JAVA] SVN Lock 해결하는 방법 (E155004 에러) (0) | 2022.07.14 |
[JAVA] 자바 이클립스와 JDK 설치 및 환경변수 설정하는 방법 part.2 (0) | 2022.06.22 |
[JAVA] 자바 이클립스와 JDK 설치 및 환경변수 설정하는 방법 part.1 (0) | 2022.06.21 |
[JAVA] 비트연산자 Integer.toBinaryString() 2진수, 8진수 16진수 (0) | 2022.04.27 |