ch6-9. 클래스의 정의(1) - 데이터와 함수의 결합
- 클래스란?
- 데이터 저장공간의 발전
- 변수 : 하나의 데이터를 저장할 수 있는 공간
- 배열 : 같은 종류의 여러 데이터를 하나로 저장할 수 있는 공간
- 구조체 : 서로 관련된 여러 데이터(종류 관계X)를 하나로 저장할 수 있는 공간
- 클래스 : (서로 관련된)데이터와 함수의 결합(구조체 + 함수)
ch6-10. 클래스의 정의(2) - 사용자 정의 타입
- 클래스란?
- 사용자 정의 타입
- 예제
- 시간을 다루기 위한 타입(없음 - 기본형 8개 밖에 없다고 가정)
- 시간 변수를 생성
int hour;
int minute;
float second;
- 만약 세개의 사간을 다룬다면?
int hour1, hour2, hour3;
int minute1, minute2, minute3;
float second1, second2, second3;
- 더 많아지면 다루기 어려우니 배열화 시킨다
- 이렇게 하면 시간은 시간끼리 배열화가 되고, 분은 분끼리 배열화가 된다.
int[] hour = new int[3];
int[] minute = new int[3];
float[] second = new float[3];
- 그래서 class를 정의해서 사용한다.
class Time {
int hour;
int minute;
float second;
}
- 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();
}