【发布时间】:2017-11-23 08:08:56
【问题描述】:
我已尝试执行下面给出的代码:
public class XXX
{
public static void main(String[] args)
{System.out.println(new XXX().class);
}
}
但是代码在编译时显示错误:
/XXX.java:4: error: <identifier> expected
{System.out.println(new XXX().class);
^
/XXX.java:4: error: ';' expected
{System.out.println(new XXX().class);
^
2 errors
但是当我编译以下代码时:
public class XXX
{
public static void main(String[] args)
{System.out.println(XXX.class);
}
}
它工作正常,我的意思是它打印如下所示的输出
class XXX
这是否意味着java中的“.class”操作(我不知道该怎么称呼它)只适用于一个类而不是它的实例?
【问题讨论】:
-
但如果“.class”提供静态访问,那么它也应该适用于非静态内容的情况
标签: java