SomeClass.class的Java语法

czc*_*ong 1 java syntax android

最近我在Android中遇到了以下语法:

Intent i = new Intent(getApplicationContext(), SomeActivityClass.class);
Run Code Online (Sandbox Code Playgroud)

有人可以解释一下SomeActivityClass.class调用时会发生什么吗?

MBy*_*ByD 5

class是每个类的静态类字段,其类型Class<?>表示该特定类的类型.它通常用于通过反射实例化一个类(如在意图情况下).

即 - 之后:

Class<?> clazz = SomeActivityClass.class;
Run Code Online (Sandbox Code Playgroud)

clazz将引用Class<?>代表SomeActivityClass该类的类型的对象.

链接:

  • +1并注意`Class <SomeActivityClass> clazz = SomeActivityClass.class;`也是可能的. (2认同)