Constante estática en Kotlin desde el nombre de la clase Java

Usualmente tengo esto en Java:

package some.package;
public class Clz {
    public static final String ACTION_DIVE = Clz.class.getName() + ".action.DIVE";
}

que es accesible desde fuera de esa clase como Clz.ACTION_DIVEy será el valor "some.package.Clz.action.DIVE".

¿Cómo puedo hacer lo mismo en la clase Kotlin Clzpara que se pueda acceder de la misma manera desde fuera de las clases Java? Intenté lo siguiente pero no se compila porque no es una constante:

package some.package
object Clz {
    const val ACTION_DIVE = Clz.javaClass.name + ".action.DIVE"
}
Respuesta 1

Puede declarar un companion objectdentro de su clase y poner la propiedad constante dentro.

class Clz {

    companion object{
         var ACTION_DIVE = Clz::class.simpleName + ".action.DIVE"
    }
}

Entonces puedes acceder a la propiedad

println(Clz.ACTION_DIVE)
Respuesta: 2

Soy un novato en la programación de Java, pero necesito hacer un CheckBox Desactivar un JTextField cuando está marcado, pero no tengo éxito en esto, intenté if (JTextField.isSelected ()) pero sin éxito. Aquí ...

Francamente, estoy muy lejos de ser un gurú de los genéricos y tengo que refactorizar algún código. Tengo tres subclases: clase D, clase R y clase S. Cada una de estas clases amplía la clase AbstractA. El objetivo de ...

Estoy tratando de asegurar una aplicación web de demostración en wildfly. He definido este dominio de seguridad en el standalone.xml <security-domains> <security-domain name = "projects" cache -...

Mi declaración falsa de devolución no funciona como se esperaba. Tengo un método recursivo llamado "prosegui", funciona con la mayoría de las palabras con las que quiero trabajar, pero con algunas de ellas el retorno falso no ...