gpt4 book ai didi

java - Java 中的 .class 到底返回了什么?

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:55:09 27 4
gpt4 key购买 nike

为什么不允许通过.class返回的类引用来调用静态方法?但是相反,如果使用类名直接调用静态方法,它就可以正常工作。就像下面的例子一样。他们不相等吗?

package typeinfo;

class Base {
public static void method1() {
System.out.println("Inside static method1");
}
public void method2() {
System.out.println("Inside method2");
}
}
public class Sample {
public static void main(String[] args) {
Class<Base> b = Base.class;
// Works fine
Base.method1();
// Gives compilation error: cannot find symbol
// Is below statement not equal to Base.method1() ?
b.method1();
}
}

最佳答案

.class返回类 java.lang.Class 的实例- 不,Class<Base>Base 不同.

java.lang.Class主要在使用Reflection API时使用.

关于java - Java 中的 .class 到底返回了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27647837/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com