about. What I learned

클래스

정의

데이터와 함수의 결합

변수 : 하나의 데이터 >>>> 배열 : 같은 종류의 여러 데이터를 집합으로 >>>> 구조체 : 서로 관련되 여러 타입의 데이터를 종류에 상관없이 저장

>>>>>>>>> 클래스 : 서로 관계가 깊은 데이터와 함수를 결합하여 저장할 수 있는 공간

 

사용자 정의 타입

내가 원하는 클래스를 만들어서 그 안에 함수와 변수들을 조합할 수 있다. 시간(int)과 분(int)과 초(float)를 함께 한 클래스에 저장하는 것을 예로 들 수 있다. 여러 타입이 존재하고 시간은 00시부터 24시까지만 존재하고 분은 00분 부터 60분까지 초는 0.000001을 최소값으로 놓고 60초 까지 존재한다. 이 조건문을 시간 클래스 안에 넣어 놓고 시간계산이라는 객체를 인스턴스라는 복제품으로써 사용이 가능하다.

 

선언 위치에 따른 변수의 종류

인스턴스 변수(클래스 영역) : 객체를 생성하면 생성되는 변수

클래스 변수 (클래스 영역) ; 소스가 생성되고 메모리에 올라가면 자동적으로 생성된다.

카드로 비교해서 보면  인스턴스 변수는 모양(하트, 스페이스 등), 숫자이고 클래스 변수는 높이와 넓이 등으로 볼 수 있다. 높이와 넓이는 모든 카드가 동일하지만 모양과 숫자는 모든 카드가 가지각색이다.

지역변수(메서드 영역) : 메서드 영역안에서만 활동이가능 메서드가 끝나면 자동 소멸