Android中的lateinit關(guān)鍵字用于延遲初始化變量,在使用時(shí)才進(jìn)行賦值操作。與普通成員變量初始化的區(qū)別在于,普通成員變量在聲明時(shí)就需要進(jìn)行初始化賦值,而lateinit修飾的變量可以先聲明而不賦值,在需要使用時(shí)再進(jìn)行賦值操作。
lateinit修飾的變量必須是非空類型且不能使用基本數(shù)據(jù)類型,否則會(huì)報(bào)錯(cuò)。普通成員變量可以使用任何類型進(jìn)行初始化賦值。
另外,lateinit修飾的變量必須在聲明時(shí)初始化為null,否則會(huì)報(bào)錯(cuò)。普通成員變量在聲明時(shí)可以直接初始化賦值,不需要為null。