当前位置: 首页 > 面试题库 >

为什么在方法的重载中加宽会同时击败Boxing和var-args?

酆鸿哲
2023-03-14
问题内容

我正在为SCJP考试做准备,在研究扩展部分时,考虑到在重载方面扩展胜过Boxing和Var-args,但没有明确的解释。尝试搜索,但没有得到更好的答案。

我得到的一个答案是因为编译器在选择较新的样式之前先选择了较旧的样式。但是我不相信。

编辑:我知道加宽比拳击和var-args更可取。但是为什么是我的问题。其中我知道一个。任何其他原因。


问题答案:

是的,由于兼容性要求,编译器“选择较旧的样式而不是较新的样式”。想象一下在Java 5发布之前编写的一些代码,当在Java
5下编译时,其行为突然发生了变化!那将是不好的。

自Java诞生以来,转换的范围不断扩大,但是自动装箱和varargs是Java 5的新增功能。



 类似资料:
  • 问题内容: 我正在努力了解为什么在Java中 需要方法重载和重写 ? 我已经阅读了一些与此相关的文章,但无法理解为什么实际上需要它? 我还访问了以下url,但在该主题中我还不清楚。 Java重载和覆盖 任何实际的例子将不胜感激。 提前致谢。 问题答案: 来自doc的 方法重载: 假设您有一个可以使用书法绘制各种类型的数据(字符串,整数等)的类,并且包含一个用于绘制每种数据类型的方法。为每个方法使用

  • 本文向大家介绍为什么在重写 equals方法的同时必须重写 hashcode方法,包括了为什么在重写 equals方法的同时必须重写 hashcode方法的使用技巧和注意事项,需要的朋友参考一下 我们都知道Java语言是完全面向对象的,在java中,所有的对象都是继承于Object类。 其 equals 方法比较的是两个对象的引用指向的地址,hashcode 是一个本地方法,返回的是对象地址值。O

  • 我已经调整了控制器构造函数和fxml,所以除了fxml构造和fxml加载之外,控制器的所有fxml设置都在fxml中。这里是我的控制器:

  • 问题内容: 我已经调整了控制器的构造函数和fxml,以便将控制器的fxml的所有设置都放在fxml中,除了FXML的构造和fxml的加载。这是我的控制器: 和我的fxml文件: 当调用fxmlLoader.load()并返回FXMLLoader时会发生stackoverflow fxmlLoader = new FXMLLoader(…),然后再次调用fxmlLoader.load()…为什么会发

  • 问题内容: 我使用弹出窗口创建新记录,并在窗口内部渲染。除此之外,我还根据其中一个组合框的selectedindex在此视图中调用a 。我可以成功将表单发布到Controller并在出现错误时将其返回到视图。但是,返回表格后,只有零件返回,而我无法渲染。因此,在提交表单之前,我又如何将其呈现为最后状态? 视图: 问题答案: 在这种情况下,您需要在没有HTML帮助程序的情况下进行自定义ajax发布。

  • 本文向大家介绍什么是PHP中的方法重载?,包括了什么是PHP中的方法重载?的使用技巧和注意事项,需要的朋友参考一下 方法重载是面向对象编程的概念,它有助于轻松地构建复合应用程序。函数重载或方法重载是一项功能,它允许创建多个名称相似的方法,这些方法在其作为参数接受的输入参数的类型上彼此不同。 上面的概念对于其他编程语言来说很好,它被称为静态多态,即方法重载。 示例 让我们通过一个例子来理解。 输出: