Когда инициализируются объекты пакета?

Если я определяю объект пакета

package com.something.else

package object more {
    val time = System.currentTimeMillis
    // ... other stuff ...
}

, который затем импортируется куда-то в исходный код.

import com.something.else.more

Когда этот объект (и его элементы) инициализируется/конструируется?

Другими словами, что определяет значение more.time?
Оценивается ли он при первом запуске программы? Или при первом доступе? Или при первом доступе к more?

5
задан Malabarba 11 June 2012 в 01:20
поделиться