интерфейс должен быть инициализирован

пробую учить kotlin. Вот код.

val url = URL(query)
val protocol = url.protocol
val conn : interface_web

when ( protocol ) {
    "http" -> conn = conn_http()
    "https" -> conn = conn_https()
    else -> WWW_ERRORS.NOT_FOUND_PROTOCOL
}

conn.connect(url)

пишет Variable 'conn' must be initialized


Ответы (1 шт):

Автор решения: Tiarait

Собственно пишет что вы должны задать изначальное значение, например var conn : interface_web = conn_http() или же в вашем примере можно сделать так

val url = URL(query)
val protocol = url.protocol
var conn : interface_web? = null

when ( protocol ) {
    "http" -> conn = conn_http()
    "https" -> conn = conn_https()
    else -> WWW_ERRORS.NOT_FOUND_PROTOCOL
}

conn?.connect(url)
→ Ссылка