常量
Java中:
class StaticDemoActivity { public static final String LOAN_TYPE = "loanType"; public static final String LOAN_TITLE = "loanTitle"; }
Kotlin中:
class StaticDemoActivity { companion object { val LOAN_TYPE = "loanType" val LOAN_TITLE = "loanTitle" } } 或者 class StaticDemoActivity { companion object StaticParams{ val LOAN_TYPE = "loanType" val LOAN_TITLE = "loanTitle" } } 或者 class StaticDemoActivity { companion object { const val LOAN_TYPE = "loanType" const val LOAN_TITLE = "loanTitle" } }
注:
const
關鍵字用來修飾常量,且只能修飾val
,不能修飾var
,companion object
的名字可以省略,可以使用Companion
來指代
引用常量(這里的引用只針對於java引用kotlin代碼)
TestEntity類引用StaticDemoActivity中的常量
class TestEntity { public TestEntity () { String title = StaticDemoActivity.Companion.getLOAN_TITLE(); } } 或者 class TestEntity { public TestEntity () { String title = StaticDemoActivity.StaticParams.getLOAN_TITLE(); } } 或者 class TestEntity { public TestEntity () { String title = StaticDemoActivity.LOAN_TITLE; String type= StaticDemoActivity.LOAN_TYPE; } }
靜態方法
Java代碼:
class StaticDemoActivity { public static void test(){ 、、、 } }
Kotlin中:
class StaticDemoActivity { companion object { fun test(){ 、、、 } } } 或者 class StaticDemoActivity { companion object StaticParams{ fun test() { 、、、 } } }
引用靜態方法(這里的引用只針對於java引用kotlin代碼)
TestEntity類引用StaticDemoActivity中的靜態方法
class TestEntity { public TestEntity () { StaticDemoActivity.Companion.test(); } } 或者 class TestEntity { public TestEntity () { StaticDemoActivity.StaticParams.test(); } }
companion object {}
中用來修飾靜態常量
,或者靜態方法
,單例
等等