-
복습 5일차 - 접근제어자, ★캡슐화프로그래밍 언어/자바(JAVA) 2024. 3. 3. 00:45
접근제어자의 정의와 필요성
◆ 외부에서 특정 필드(멤버변수) 메서드에 접근하는 것을 허용하거나 제한할 수 있다
■ 클래스 안의 데이터, 메서드 변경, 삭제하는 것을 미연에 방지할 수 있다
□ 스피커를 예시로 들자면 스피커의 음량은 100을 넘으면 안된다는 요구사항이 있음에도, 외부에서 임의로 음량을 1000으로 변경해버려서 스피커가 고장날 수 있다
접근제어자의 종류
◆ Private : 모든 외부 호출을 막는다
◆ Public : 모든 외부 호출을 허용한다
◆ Package-private(Default) : 같은 패키지 안에서의 호출은 허용한다
◆ Protected : 같은 패키지 안, 상속 관계의 호출을 허용한다
캡슐화
◆ 속성과 기능을 하나로 묶고, 외부에서 꼭 필요한 기능만 노출하고, 나머지는 내부로 숨기는것을 말한다
■ 객체가 필드와 메소드가 접근제어자가 모두 Public 이라면 담고 있는 데이터가 외부 사용자가 무분별하게 변경하여 오류가 발생하거나, 이상한 데이터가 만들어진다
자바에서의 캡슐화
◆ 데이터를 숨겨라, 객체의 데이터는 객체가 제공하는 기능인 메서드를 통해서 접근해야 한다
◆ 사용자에게 모든 기능의 접근을 허용하지 않고, 꼭 필요한 기능만 외부에 노출하자 나머지 기능들은 모두 숨겨라
'프로그래밍 언어 > 자바(JAVA)' 카테고리의 다른 글
복습 7일차 - final, 상속 (0) 2024.03.11 복습 6일차 - 자바의 메모리 영역 (0) 2024.03.03 복습 4일차 - 생성자, 패키지 (0) 2024.03.02 자바 시험 (0) 2024.02.20 복습 3일차 - 객체지향과 클래스 (0) 2024.02.15