Java/캡슐화/접근 제한자

Java/캡슐화/접근 제한자

[캡슐화(은닉화)]

객체의 필드, 메서드를 하나로 묶고 실제 구현 내용을 감추는 것

외부 객체는 객체 내부의 구조를 알지 못하며 객체가 노출해서 제공하는 필드와 메서드만 이용할 수 있다.

캡슐화를 하여 필드와 메서드를 보호하여 외부의 잘못된 사용으로 객체가 손상하지 않는다.

즉, 캡슐화-->보안성이 높아진다.

캡슐화를 하기 위해선 접근 제한자를 이용해야한다.

[접근 제한자/Access Modifier]

1. 객체 생성을 막기 위해 생성자를 호출하지 못 하게 할 때 2. 객체의 특성 데이터를 보호하기 위해 해당 필드에 접근하지 못하도록 막아야 할 때 사용되며 클래스를 설계할때

외부클래스에서 접근 할 수 있는 멤버와

접근 할 수 없는 멤버로 구분해서 필드/생성자/메서드를 구성

public --- 모든 접근을 허용

protected --- 같은 패키지(폴더) 에 있는 클래스와 상속관계의 클래스만 허용 -->자식 클래스들만 접근허용

default --- 같은 패키지(폴더)에 있는 클래스들만 허용

private ---현재 클래스 내에서만 허용 --> 자식들이 상속 받을 수 없음

사용되는 공간 클래스 : public, default 생성자 : public, protected, default, private 변수, 메서드 : public, protected, default, private

from http://lovelyspace.tistory.com/15 by ccl(A) rewrite - 2021-11-12 21:28:05