访问公共类 (Kotlin)
Posted
技术标签:
【中文标题】访问公共类 (Kotlin)【英文标题】:Accessing a public class (Kotlin) 【发布时间】:2021-09-14 20:14:34 【问题描述】:我是 kotlin 和 android studio(我正在使用)的新手,所以这很简单,但是我在编写教程时遇到了这个问题
问题很简单:
我有两个 kotlin 类(MainActivity 和为什么)。为什么包含我想在 MainActivity 中调用的函数测试。
我该怎么做?
在本教程中,我只是在 MainActivity 中这样称呼它
why.test()
(完整代码如下)
但是当我尝试这样做时,我得到了错误:
“未解决的参考:第 13 行测试”(我称之为测试)。
为什么会这样?我该如何让它发挥作用?
代码:
MainActivity 类:
package com.example.tester
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
class MainActivity : AppCompatActivity()
override fun onCreate(savedInstanceState: Bundle?)
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
work()
private fun work()
why.test()
为什么类中的测试函数:(在这个例子中测试什么都不做)
package com.example.tester
class why
fun test()
var i = 0;
【问题讨论】:
你确定教程没有why().test()
吗? why
后面有括号?或者,他们是否可能将why
声明为object
而不是class
?
【参考方案1】:
我认为“测试”应该是静态的(或创建why
的对象),如下所示:
package com.example.tester
class why
companion object
fun test()
var i = 0;
见What is the equivalent of Java static methods in Kotlin?
【讨论】:
以上是关于访问公共类 (Kotlin)的主要内容,如果未能解决你的问题,请参考以下文章