例如,当我们创建一个intent时,我们使用
Intent i = new Intent(MainActivity.this,LoginActivity.class);
.class
指的是什么?它是作为字符串的类的名称?或者是班级本身?为什么我不能只通过LoginActivity
而不是LoginActivity.class
?
答案 0 :(得分:4)
它指的是Class
对象本身的一个实例。查看Class
的{{3}}。在这种情况下,Intent
Java documentation会获取您要启动的Activity
的实例。这也称为显式Intent
,因为您明确定义了要启动的组件,而隐式Intent
在运行时由Android解析。
答案 1 :(得分:2)
如果查看适用的构造函数public Intent (Context packageContext, Class<?> cls)
,文档,您会注意到第二个参数需要一个类对象。为任何对象提供类的方法是object.getClass()
或<className>.class
。
答案 2 :(得分:1)
ClassName.class
指的是要从当前活动状态打开的目标活动。
当您点击联系人链接时,它会像html <a href="contactus.html">contact</a>
中的hiperlink一样打开。