[4일차] 5장(2) : 참조 자료형, 정보 은닉

  • 참조 자료형이란?
    크기가 정해진 기본 자료형(int, char, float, double 등..)이 아닌 자료형으로, 프로그래머가 필요에 의해 만든 클래스를 사용할 수도 있고 JDK에서 제공하는 클래스를 사용할 수도 있다. (String 등) 기본 자료형을 사용하듯이 클래스 자료형 변수를 선언해서 사용한다고 생각하면 이해하기 쉬움.

<기본>

<과목 이름 변수 추가>

<과목 클래스 만들기>

<과목 클래스를 분리해서 만들기>


  • 접근 제어자
    : 객체 지향 프로그램에서는 예약어를 사용해 클래스 내부의 변수나 메섣, 생성자에 대한 접근 권한을 지정할 수 있다. 이러한 예약어를 '접근 제어자(access modifier)'라고 한다. ex) public, private

  • public 예약어
    : public이라고 선언한 변수나 메서드는 외부 클래스에서 접근이 가능하며 외부 클래스가 사용할 수 있다.

  • private 예약어
    : 외부 클래스에서 사용 불가


  • get(), set() 메서드 사용
    : private로 선언한 변수를 외부 코드에서 사용하려면 public를 제공해야 한다. get(), set() 메서드를 사용할 수 있다.


  • 정보은닉이란?
    : 클래스의 멤버 변수를 public으로 선언하면 접근이 제한되지 않으므로 정보의 오류가 발생할 수 있다. 이런 경우에는 오류가 나더라도 그 값이 해당 변수에 대임되지 못하도록 변수를 private로 바꾸고 public 메서드를 별도로 제공해야 한다.
    : 클래스 내부에서 사용할 변수나 메서드는 private로 선언해서 외부에서 접근하지 못하도록 하는 것을 객체 지향에서는 '정보 은닉(information hiding)'이라고 한다. 자바에서는 접근 제어자를 사용하여 정보 은닉을 구현한다.

  • 자바에서 사용하는 접근 제어자
    public : 외부 클래스 어디에서나 접근 가능
    protected : 같은 패키지 내부와 상속 관계의 클래스에서만 접근할 수 있고 그 외 클래스에서는 접근할 수 없다.
    아무것도 없는 경우 : default이며 같은 패키지 내부에서만 접근할 수 있다.
    private : 같은 클래스 내부에서만 접근할 수 있다.

좋은 웹페이지 즐겨찾기