Я пытаюсь статически получить имя объекта (для ведения журнала)
Эквивалентность для:
public class SomeClass { private static final String TAG = SomeClass.class.getSimpleName() }
В Котлине:
object SomeObject { private const val TAG = ? }
Попробуй это
SomeClass::class.simpleName
Если вы используете его в приложении для Android, я предлагаю вам сделать это следующим образом: (packageName: className)
object SomeObject { private val TAG = "${SomeObject::class.java.`package`.name}:${SomeObject::class.simpleName}" }
При этом вы можете гарантировать, что имя тега для любого другого класса не будет дублироваться. Это действительно полезно, если вы создаете фрагмент lib / code, который может использовать кто-то. В противном случае одинаковое имя тега может привести к ошибкам во время выполнения.