개발&프로그래밍104 [Kotlin] 중첩 클래스와 내부 클래스 Kotlin의 중첩 클래스와 내부 클래스Kotlin에서 클래스 내부에 다른 클래스를 정의하는 방법은 코드의 구조화와 캡슐화를 위한 강력한 도구입니다. 이 문서에서는 중첩 클래스와 내부 클래스의 개념과 사용법을 상세히 살펴보겠습니다. 중첩 클래스 (Nested Classes)Kotlin에서는 클래스 안에 다른 클래스를 중첩하여 정의할 수 있습니다:class Outer { private val bar: Int = 1 class Nested { fun foo() = 2 }}val demo = Outer.Nested().foo() // == 2 이 예제에서 Nested 클래스는 Outer 클래스 내부에 정의되어 있지만, Outer 클래스의 인스턴스에 대한 참조를 가지지 않습니다... 2024. 8. 15. [kotlin] 제네릭: in, out, where Kotlin의 제네릭: in, out, whereKotlin의 제네릭은 타입 안전성과 코드 재사용성을 높이는 강력한 기능입니다.이 가이드에서는 Kotlin 제네릭의 다양한 측면을 상세히 살펴보겠습니다. 제네릭 기본 (Generics Basics)Kotlin의 클래스는 Java와 마찬가지로 타입 파라미터를 가질 수 있습니다:class Box(t: T) { var value = t}val box: Box = Box(1)// 또는 타입 추론을 사용하여val box = Box(1) // Box로 추론됨 변성 (Variance)Kotlin은 선언 지점 변성(declaration-site variance)과 타입 프로젝션(type projections)을 제공합니다. 선언 지점 변성 (Declarati.. 2024. 8. 14. [kotlin] Sealed classes & interfaces Kotlin의 Sealed 클래스와 인터페이스Kotlin의 sealed 클래스와 인터페이스는 클래스 계층 구조의 제어된 상속을 제공하는 강력한 기능입니다.이 가이드에서는 sealed 클래스와 인터페이스의 다양한 측면을 상세히 살펴보겠습니다. sealed 클래스와 인터페이스 기본 (Sealed Classes and Interfaces Basics)sealed 클래스와 인터페이스는 제한된 상속을 구현할 때 사용됩니다. sealed 클래스의 모든 직접 하위 클래스는 컴파일 시점에 알려져 있어야 하며, 같은 모듈과 패키지 내에서만 정의될 수 있습니다.sealed interface Errorsealed class IOError(): Errorclass FileReadError(val file: File): IO.. 2024. 8. 14. [kotlin] 데이터 클래스(Data classes) Kotlin의 데이터 클래스Kotlin의 데이터 클래스(Data Classes)는 주로 데이터를 보유하는 용도로 사용되는 특별한 클래스입니다.이 가이드에서는 Kotlin 데이터 클래스의 다양한 측면을 상세히 살펴보겠습니다. 데이터 클래스 기본 (Data Class Basics)데이터 클래스는 data 키워드로 표시됩니다:data class User(val name: String, val age: Int)컴파일러는 주 생성자에 선언된 모든 속성에 대해 자동으로 다음과 같은 멤버 함수를 생성합니다:.equals()/.hashCode() 쌍.toString() (예: "User(name=John, age=42)").componentN() 함수 (속성 선언 순서에 해당).copy() 함수 데이터 클래스 요구사.. 2024. 8. 14. 이전 1 ··· 12 13 14 15 16 17 18 ··· 26 다음