본문 바로가기

classes

(2)
코틀린[Kotlin] 특별한 클래스들 (Data, Enum, Sealed Classes And Object) 이번엔 코틀린에서 지원하는 특별한 클래스들에 대해서 다뤄볼 것입니다. 코틀린 공식문서를 참고해 작성했습니다. Data Classes 데이터 클래스를 사용하면 값을 저장하는 데 사용되는 클래스를 쉽게 만들 수 있습니다. 이러한 클래스에는 복사하기(copy), 문자열 표현 가져오기(toString) 및 컬렉션의 인스턴스 사용을 위한 메서드가 자동으로 제공됩니다. data class User(val name: String, val id: Int) { // 1 override fun equals(other: Any?) = other is User && other.id == this.id // 2 } fun main() { val user = User("KimSo", 1) // User(name=KimSo, id..
코틀린[Kotlin] 기본 문법 2 (클래스, 제너릭, 상속) 코틀린 기본 문법 1편에 이어 이번엔 객체지향 프로그래밍의 기본인 클래스, 제너릭, 상속을 코틀린에서 어떻게 사용하는지 알아보겠습니다. 코틀린 공식 문서를 참고했습니다. 클래스 (Classes) 클래스 선언은 클래스 이름, 클래스 헤더(유형 매개변수 지정, 기본 생성자 등) 및 클래스 본문으로 구성되며 중괄호로 둘러싸여 있습니다. 헤더와 본문은 모두 선택 사항입니다. 클래스에 본문이 없으면 중괄호를 생략할 수 있습니다. class Customer // 1 class Contact(val id: Int, var email: String) // 2 fun main() { val customer = Customer() // 3 val contact = Contact(1, "mary@gmail.com") // ..