티스토리 뷰

Android/Kotlin

[Kotlin]  lateinit  vs  Delegates.notNull<>()

혀가 길지 않은 개발자 2020. 8. 27. 15:17

lateinit  vs  Delegates.notNull<>()


MainActivity.kt

package com.jwsoft.kotlinproject

import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle

class MainActivity : AppCompatActivity() {

    private lateinit var longValue: Long
    private lateinit var intValue: Int
    private lateinit var stringValue: String
    private lateinit var arrLong: ArrayList<Long>
    private lateinit var arrInt: ArrayList<Int>
    private lateinit var arrString: ArrayList<String>

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

    }

}

에러 발생

 

 

 

 

 

MainActivity.kt

package com.jwsoft.kotlinproject

import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import kotlin.properties.Delegates

class MainActivity : AppCompatActivity() {

    private var longValue by Delegates.notNull<Long>()
    private var intValue by Delegates.notNull<Int>()
    private lateinit var stringValue: String
    private lateinit var arrLong: ArrayList<Long>
    private lateinit var arrInt: ArrayList<Int>
    private lateinit var arrString: ArrayList<String>

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

    }

}

lateinit 선언 시 원시타입 사용 X

by Delegates.notNull<>() 사용 시 원시타입 사용 O

 

 

 

 

 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
글 보관함