CODEDRAGON ㆍDevelopment/Java
정보은닉(Information Hiding)
· 정보에 직접 접근하는 것을 허용하지 않겠다는 의미입니다.
· 클래스안에 있는 정보를 보이지 않도록 감싸는 것입니다.
· 객체간에 약속되지 않은 부분을 숨기는 것입니다.
· Data Hiding이라고도 합니다.
자판기 | 계산기 |
은닉성(Encapsulation)
· 최소한의 기능만을 노출하고 내부는 모두 감추는 것입니다.
· 상속성(Inheritance), 다형성(Polymorphism)과 함께 OOP의 3대 특성입니다.
· 보통, 상수를 제외한 필드는 무조건 감추는 것이 좋습니다.(대체로 필드는 모두 감추고 메소드는 꼭 노출이 필요한 것만 공개하여 접근 한정자로 공개 수준을 결정합니다)
· (객체 지향 프로그래밍의 원칙) 클래스의 필드는 기본적으로 private으로 설정하여 외부로터의 접근을 완전히 제한하는 것이 일반적이며 메서드는 외부에서 호출해야 하는 것은 public으로 하고 내부에서만 사용되는 것들은 private으로 설정합니다.
인스턴스 변수의 private
· private과 같은 키워드를 접근지정자(접근제어 지시자)라고 합니다.
· private선언으로인해 메소드(method)를 통해서만 접근가능하며
· 외부에서는 접근할 수 없습니다.(class 코드 밖에서는 접근할 수 없습니다.)
class Student{ private String name; private int age;
public void setName(String name){ this.name=name; } }
|
출처
images.google.com
'Development > Java' 카테고리의 다른 글
외부 제공 클래스 정의하기 - 파일당 하나의 외부 제공 클래스 정의하기, 클래스를 나누면 이점 (0) | 2015.07.19 |
---|---|
MyClassMain-은닉화, 캡슐화 - 클래스 분리 (0) | 2015.07.16 |
생성자 오버로딩(Overloading) (0) | 2015.07.15 |
JAVA API DOC - 자바 API 문서(JAVA API Document), API 문서 경로 (0) | 2015.07.13 |
CapsuleMain.java-은닉화, 캡슐화(클래스 분리) (0) | 2015.07.11 |