클래스와 객체
클래스와 객체의 정의와 용도
- 클래스의 정의 : 클래스란 객체를 정의해 놓은 것이다.
- 클래스의 용도 : 클래스는 객체를 생성하는데 사용된다.
- 객체 : 클래스에 정의된 내용대로 메모리에 생성된 것.
객체와 인스턴스
- 클래스로부터 객체를 만드는 과정을 클래스의 인스턴스화라고 하며 어떤 클래스로부터 만들어진 객체를 그 클래스의 인스턴스라고 한다.
- 클래스 — 인스턴스화 —> 인스턴스(객체)
객체의 구성 요소 - 속성과 기능
- 속성(property) : 멤버 변수, 특성, 필드, 상태
- 기능(function) : 메서드, 함수, 행위
인스턴스의 생성과 사용
클래스명 변수명; // 클래스의 객체를 참조하기 위한 참조변수를 선언
변수명 = new 클래스명(); // 클래스의 객체를 생성 후, 객체의 주소를 참조 변수에 저장
-
인스턴스는 참조변수를 통해서만 다룰 수 있으며, 참조 변수의 타입은 인스터늣의 타입과 일치해야 한다.
- 같은 클래스로부터 생성되었을지라도 각 인스턴스의 속성은 서로 다른 값을 유지할 수 있으며 메서드의 내용은 모든 인스턴스에 대해 동일하다.
- 참조변수에는 하나의 값(주소)만이 저장될 수 있으므로 둘 이상의 참조 변수가 하나의 인스턴스를 가리키는 것은 가능하지만, 하나의 참조변수로 여러 개의 인스턴스를 가리키는 것은 가능하지 않다.
객체배열
- 많은 수의 객체를 다뤄야 할 때 배열로 다루면 편리하다.
클래스의 또 다른 정의
-
데이터와 함수의 결합.
-
사용자 정의 타입
- 서로 관련된 변수들을 묶어서 하나의 타입으로 새로 추가하는 것을 사용자 정의 타입이라고 한다.