Java의 정석 #6 - 객체지향 프로그래밍(클래스)

김형우·2022년 7월 13일
0

Java의 정석

목록 보기
6/7

ch6-9. 클래스의 정의(1) - 데이터와 함수의 결합

  • 클래스란?
    • 설계도
    • 데이터 + 함수
    • 사용자 정의 타입
  • 데이터 저장공간의 발전
    1. 변수 : 하나의 데이터를 저장할 수 있는 공간
    2. 배열 : 같은 종류의 여러 데이터를 하나로 저장할 수 있는 공간
    3. 구조체 : 서로 관련된 여러 데이터(종류 관계X)를 하나로 저장할 수 있는 공간
    4. 클래스 : (서로 관련된)데이터와 함수의 결합(구조체 + 함수)

ch6-10. 클래스의 정의(2) - 사용자 정의 타입

  • 클래스란?
    • 설계도
    • 데이터 + 함수
    • 사용자 정의 타입
  • 사용자 정의 타입
    • 원하는 타입을 직접 만들 수 있다
  • 예제
  • 시간을 다루기 위한 타입(없음 - 기본형 8개 밖에 없다고 가정)
  1. 시간 변수를 생성
  int hour;
  int minute;
  float second;
  1. 만약 세개의 사간을 다룬다면?
  int hour1, hour2, hour3;
  int minute1, minute2, minute3;
  float second1, second2, second3;
  1. 더 많아지면 다루기 어려우니 배열화 시킨다
  • 이렇게 하면 시간은 시간끼리 배열화가 되고, 분은 분끼리 배열화가 된다.
  int[] hour = new int[3];
  int[] minute = new int[3];
  float[] second = new float[3];
  1. 그래서 class를 정의해서 사용한다.
  class Time {
  	int hour;
    int minute;
    float second;
  }
  1. Time class 사용
// 1. 시간 변수를 생성
Time t = new Time();

// 2. 만약 세개의 사간을 다룬다면?
Time t1 = new Time();
Time t2 = new Time();
Time t3 = new Time();

// 3. 더 많아지면 다루기 어려우니 배열화 시킨다
Time[] arrTime = new Time[3];
for(i=0; i<arrTime.length; i++){
  arrTime[i] = new Time();
}
profile
The best

0개의 댓글