참조 자료형과 정보은닉 2023. 4. 17. 21:40

namin0_0·2023년 5월 29일
0
  • 변수의 자료형은 기본자료형과 참조자료형으로 나뉜다.

기본자료형

  • 기본적으로 언어에서 제공해주는 자료형

-int, long double 등

참조 자료형 (reference data type)

  • 클래스 형으로 선언하는 자료형

  • 자바 라이브러리 JDK에서 제공되는 자료형

= String, data 등

  • 직접 만들어서 사용하는 자료형

= 클래스의 변수 Student 등

참조 자료형의 예

  • 원은 점의 정보를 사용하는데 point 라는 x,y 값을 같은 클래스에 두지 않고 따로 클래스를 분리하여 참조자료형으로 불러와서 사용하기


참조 자료형의 예

-학생의 속성 중 수업에 대한 부분

-수업에 대한 각 속성을 학생 클래스에 정의하지 않고 수업이라는 클래스로 분리해서 사용

-이때 과목은 참조자료형으로 사용

//클래스를 따로 만들지 않을 경우

//Subject 클래스 따로 만들기

//Subject 클래스를 참조자료형으로 불러오기

//Subject 클래스의 get, set 메서드 만들기 - 직접 쓰기

//Subject 클래스의 메서드 만들기 - 자동으로 만들기

= 이클립스에서 제공하는 겟셋메서드를 만들어주는 위저드 이용하기

  1. 마우스 우클릭

  2. Spurce 클릭

  3. Generate Getters and Setters

  4. 멤버변수들 중에 겟셋 메서드 만들 멤버변수를 선택한다.

  5. 선택 후 Generate 클릭하면 끝


    //요소들을 세팅하는 set메서드 입력,

정보 출력을 위한 메서드 입력


//정보가 잘 출력되는지 테스트 해보기

정보은닉 (information hiding)

  • 객체지향 프로그램의 가장 큰 특징 중 하나

  • 객체의 속성을 숨기는것

  • 이 때 사용하는 접근제어자는 private

  • 클래스의 외부에서 클래스 내부의 멤버변수나 메서드에 접근(access)하지 못하게 하는 경우 사용한다.

  • 멤버변수나 메서드를 외부에서 사용하지 못하도록해서 오류를 줄일 수 있다.

  • 변수에 대해서는 필요한 경우 get(), set() 메서드를 제공한다.

//모든 멤버변수를 private로 사용 할 필요는 없다.

//하지만 변수가 오픈돼서 문제가 될 수 있다. 혹은 심각한 오류가 생길 수 있다 할 때는 반드시 private를 사용해서 속성을 숨겨준 후 get,set 메서드를 사용해서 값을 이용한다.

지금까지 배운 접근제어자 3가지

  • 디폴트(default) : 아무것도 안쓰는 것, 같은 패키지 안에서는 모두 엑세스 할 수 있다.

  • public : 외부클래스에서 다 가져다가 쓸 수 있다.

  • private : 사용된 클래스 안에서만 쓸 수 있다.

profile
갓생살기프로젝트

0개의 댓글