- 데이터 클래스 (data class)
개발하다보면 정보(프로퍼티)만 가지고 있는 클래스가 필요
data class 키워드를 사용하면 매우 간편해져요
기본 생성자에 1개 이상의 매개변수가 변수나 상수로 존재해야 함
아주 유용한 메소드를 자동으로 만들어준다
hashCode(): 객체를 구분하기 위한 고유값을 리턴해준다.
eauals(): 동일한 객체인지 비교해서 true 또는 false를 리턴해준다
copy(): 현재 객체의 모든 정보를 복사해서 새로운 객체를 리턴해준다
toString(): 현재 객체의 모든 정보(프로퍼티)를 예쁘게 출력해준다
getXXX()/setXXX(매개변수): 변수의 값을 리턴하거나 설정해준다
유용한 메소드를 자동으로 생성해준다
data class 클래스이름 {
정보1
정보2
}
- 실드 클래스 (sealed class)
클래스 상속과 관련된 개념
상속받을 수 있는 자식클래스들을 미리 정의할 수 있다
무분별한 상속을 방지할 수 있다
컴파일 시점에 생성할 수 있는 자식을 알 수 있기때문에 효율적으로 다형성을 구현
sealed class 부모클래스 {
class 자식클래스1 : 부모클래스생성자
class 자식클래스2 : 부모클래스생성자
}
- 오브젝트 클래스 (object class)
Java의 static 대신 사용하는 키워드
프로그램을 실행하는 동시에 인스턴스화