본문 바로가기

Java

Java 클래스의 정의

1. 객체지향 이론 관점: 객체를 생성하기 위한 틀(설계도)

 

2. 프로그래밍적 관점: 데이터와 함수의 결합

  1) 변수: 하나의 데이터를 저장할 수 있는 공간

  2) 배열: 같은 종류의 여러 데이터를 하나로 저장할 수 있는 공간

  3) 구조체: 서로 관련있는 여러 데이터(종류 관계x)를 하나로 저장할 수 있는 공간

  4) 클래스: 데이터와 함수의 결합(구조체 + 함수)

 

3. 사용자 정의 타입(user-defined type): 프로그래머가 서로 관련된 변수들을 묶어서 하나의 타입으로 새로 추가하는 것

  1) 여러 프로그래밍언어에서 사용자정의 타입을 제공함

  2) 자바같은 객체지향언어에서는 클래스가 사용자 정의 타입임

  3) 비객체지향적 코드 vs 객체지향적 코드

비객체지향적 코드 객체지향적 코드
int hour1, hour2, hour3;
int minute1, minute2, minute3;
int second1, second2, second3;
//여러 시간을 다루려면 변수가 많아짐
Time t1 = new TimeI();
Time t2 = new TimeI();
Time t3 = new TimeI();
int[] hour = new int[3];
int[] minute = new int[3];
int[] second = new int[3];
//더 많은 시간을 다루기 위해 배열 사용: 시, 분, 초가 따로 묶여 있음
Time[] t = new Time[3]
t[0] = new Time();
t[1] = new Time();
t[2] = new Time();