gpt4 book ai didi

java - 可以禁用 Java 自动装箱吗?

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

“泛型(更新)”Java 教程位于:

http://docs.oracle.com/javase/tutorial/java/generics/types.html

定义一个简单的 Box 类:

public class Box {
private Object object;

public void set(Object object) { this.object = object; }
public Object get() { return object; }
}

并指出:

由于它的方法接受或返回一个对象,您可以随意传入任何您想要的,只要它不是原始类型之一。

我传递给 set 方法的每个原语都没有编译错误。如果我确实希望它中断,有什么方法可以防止自动包装原语的自动装箱?更一般地说:有没有办法手动防止自动装箱?我正在使用 Java 7。

最佳答案

is there a way to manually prevent autoboxing?

唯一确定的方法是使用早于 Java 5 的 Java 版本,这是在引入自动装箱时。

或者使用指定 Java 1.4 源兼容性的 -source 标志进行编译就可以了。注意:这不会在 Java 9 或更高版本中使用 javac,因为对 -source 小于或等于 5 的支持尚未被删除来自 javac

除了实验之外,做任何一个都是一个非常糟糕的主意。如果恢复到 Java 1.4 级别,您还会失去很多其他重要的 Java 语言特性;例如泛型、枚举等。

简而言之,自动装箱/拆箱是现代 Java 语言的基本组成部分,不能随意关闭和打开。

关于java - 可以禁用 Java 自动装箱吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26568608/

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