언어/코틀린 4

[Kotlin] 생성자

1. 주 생성자 class Animal(val name: String) 위의 코드에서 괄호에 해당하는 부분 2. init class Animal(animalName: String) { val name: String init { if (name.isEmpty()) { throw IllegalArgumentException("Name Error") } this.name = AnimalName } } init 사용해서 유효성 체크할 수 있음 3. constructor (부 생성자) class Animal(val name: String) { var age: Int = 20 var height: Int = 500 // 에러 // constructor(name: String, age: Int) { // this.a..

언어/코틀린 2023.09.05

[Kotlin] Companion object

Companion object는 싱글턴 객체를 이용할 때 사용됩니다. 코틀린에서 Companion object는 클래스 내부에 정의되는 싱글턴 객체입니다. 이 객체는 클래스의 인스턴스와는 별개로 존재하며, 클래스 내부에서 정의된 메서드나 프로퍼티에 접근할 수 있습니다. class MyClass { companion object { const val CONSTANT_VALUE = "Hello, world!" fun myFunction() { println("This is a function inside the companion object.") } } } 위 코드에서 `companion object`를 사용하여 `MyClass` 내부에 싱글턴 객체를 정의하고 있습니다. 이 객체는 `CONSTANT_VALU..

언어/코틀린 2023.05.09

[Kotlin] 코틀린 기초 - 변수, 데이터 타입

변수와 데이터 타입에 대해서 다루어 보겠습니다. 목차 1. 변수선언 2. 타입지정 3. 초기값 4. 데이터 타입 5. null 허용과 불허용 1. 변수 선언 val은 상수를 선언할 때 쓰입니다. var은 변수를 선언할 때 쓰입니다. 2. 타입지정 변수의 타입은 변수 명 뒤에 :를 추가해서 지정합니다. ex) var data : Int = 10 3. 초기값 최상위에 선언하거나 클래스의 멤버 변수는 초기값을 꼭 할당해야합니다. 함수에 선언 한 변수는 초기값을 할당하지 않아도 됩니다 -> 초기화를 미룰 수 있습니다. 1) lateinit 이후에 초기값을 할당할 것을 명시적으로 선언합니다. var 키워드로 선언한 변수에만 사용할 수 있습니다. lateinit var data: String 2) lazy 변수가 ..

언어/코틀린 2023.01.17