为什么 Java 基元类型的修饰符是公共的、抽象的和最终的?
2022-09-02 01:55:42
在对Java类型进行一些反思的过程中,我遇到了一个我不明白的奇怪之处。
检查其修饰符返回 、 和 。我理解 和 ,但是在基元类型的存在对我来说是不明显的。为什么会这样?int
public
abstract
final
public
final
abstract
编辑:我不是在反思,而是在:Integer
int
import java.lang.reflect.Modifier;
public class IntegerReflection {
public static void main(final String[] args) {
System.out.println(String.format("int.class == Integer.class -> %b", int.class == Integer.class));
System.out.println(String.format("int.class modifiers: %s", Modifier.toString(int.class.getModifiers())));
System.out.println(String.format("Integer.class modifiers: %s", Modifier.toString(Integer.class.getModifiers())));
}
}
运行时的输出:
int.class == Integer.class -> false
int.class modifiers: public abstract final
Integer.class modifiers: public final