最终方法是内联的吗?

2024-03-23

Java的final方法会自动内联吗?

很多书说可以,很多书说不!


方法的内联由 JIT 编译器执行,而不是 javac。

现代 JIT 编译器(包括 Hotspot)通常甚至可以内联非最终方法,并在必要时适当地“撤消”优化。他们基本上非常聪明。

简而言之:这完全取决于虚拟机。在我看来,你应该根据什么产生最干净的代码而不是性能来确定你的方法是否最终确定。我个人是“为继承而设计或禁止它”的粉丝,但这是一个不同的讨论:)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

最终方法是内联的吗? 的相关文章

  • 使用 Java 的 Apache Http 摘要身份验证

    我目前正在开发一个 Java 项目 但无法使 http 摘要身份验证正常工作 我尝试使用 Apache 网站 但没有帮助 我有一个需要 HTTP 摘要身份验证的网站 DefaultHttpClient httpclient new Defa
  • 使用 Tabula 通过 Python 读取 pdf 时出现 Java 错误

    我已经安装了 tabula 库 用于使用 python 将 pdf 读取到 pandas 数据框中 但是当我运行代码时 import tabula df tabula read pdf sample1 pdf pages 1 我得到了例外
  • 如何在由子控件组成的 SWT 复合材料上跟踪鼠标?

    我创建了自己的控件 我想跟踪鼠标并添加一个MouseTrackListener 很遗憾MouseEnter and MouseLeave当鼠标移动到我的合成部分 即标签和按钮 上时 也会生成事件 Mouse enter mouse ente
  • 如何在 JavaFX 中连接可观察列表?

    我所说的串联是指获得一个新列表 该列表侦听所有串联部分的更改 方法的目的是什么FXCollections concat ObservableList
  • 垃圾收集器如何在幕后工作来收集死对象?

    我正在阅读有关垃圾收集的内容 众所周知 垃圾收集会收集死亡对象并回收内存 我的问题是 Collector 如何知道任何对象已死亡 它使用什么数据结构来跟踪活动对象 我正在研究这个问题 我发现GC实际上会跟踪活动对象 并标记它们 每个未标记的
  • 与 Eclipse 中的 Java Content Assist 交互

    作为我的插件项目的一部分 我正在考虑与 Eclipse 在 Java 文件上显示的内容辅助列表进行交互 我正在尝试根据一些外部数据对列表进行重新排序 我看过一些有关创建新内容辅助的教程 但没有看到有关更改现有内容辅助的教程 这可能吗 如果是
  • 将巨大的模式编译成Java

    有两个主要工具提供了将 XSD 模式编译为 Java 的方法 xmlbeans 和 JAXB 问题是 XSD 模式确实很大 30MB 的 XML 文件 大部分模式在我的项目中没有使用 所以我可以注释掉大部分代码 但这不是一个好的解决方案 目
  • Runtime.exec 处理包含多个空格的参数

    我怎样才能进行以下运行 public class ExecTest public static void main String args try Notice the multiple spaces in the argument Str
  • 提供节点名或服务名,或未知 Java

    最近我尝试运行我的 Java 项目 每当我运行它并将其打开到我得到的服务器地址时 Unable to determine host name java net UnknownHostException Caused by java net
  • Mockito 使用 @Mock 时将 Null 值注入到 Spring bean 中?

    由于我是 Spring Test MVC 的新手 我不明白这个问题 我从以下代码中获取了http markchensblog blogspot in search label Spring http markchensblog blogsp
  • 如何在单个查询中搜索 RealmObject 的 RealmList 字段

    假设我有一堂课 public class Company extends RealmObject private String companyId private RealmList
  • 从jar中获取资源

    我有包含文件的 jar myJar res endingRule txt myJar wordcalculator merger Marge class 在 Marge java 中我有代码 private static final Str
  • 如何在JPanel中设置背景图片

    你好 我使用 JPanel 作为我的框架的容器 然后我真的想在我的面板中使用背景图片 我真的需要帮助 这是我到目前为止的代码 这是更新 请检查这里是我的代码 import java awt import javax swing import
  • 在 Java 中获取并存储子进程的输出

    我正在做一些需要我开始子处理 命令提示符 并在其上执行一些命令的事情 我需要从子进程获取输出并将其存储在文件或字符串中 这是我到目前为止所做的 但它不起作用 public static void main String args try R
  • 不可变的最终变量应该始终是静态的吗? [复制]

    这个问题在这里已经有答案了 在java中 如果一个变量是不可变的并且是final的 那么它应该是一个静态类变量吗 我问这个问题是因为每次类的实例使用它时创建一个新对象似乎很浪费 因为无论如何它总是相同的 Example 每次调用方法时都会创
  • 将 JScrollPane 添加到 JFrame

    我有一个关于向 Java 框架添加组件的问题 我有一个带有两个按钮的 JPanel 和一个添加了 JTable 的 JScrollPane 我想将这两个添加到 JFrame 中 我可以将 JPanel 添加到 JFrame 或将 JScro
  • Hibernate 本机查询 - char(3) 列

    我在 Oracle 中有一个表 其中列 SC CUR CODE 是 CHAR 3 当我做 Query q2 em createNativeQuery select sc cur code sc amount from sector cost
  • partitioningBy 必须生成一个包含 true 和 false 条目的映射吗?

    The 分区依据 https docs oracle com javase 8 docs api java util stream Collectors html partitioningBy java util function Pred
  • 抛出 Java 异常时是否会生成堆栈跟踪?

    这是假设我们不调用 printstacktrace 方法 只是抛出和捕获 我们正在考虑这样做是为了解决一些性能瓶颈 不 堆栈跟踪是在构造异常对象时生成的 而不是在抛出异常对象时生成的 Throwable 构造函数调用 fillInStack
  • Java 11 - 将 Spring @PostConstruct 替换为 afterPropertiesSet 或使用 initMethod

    我正在使用 spring 应用程序 有时会使用 PostConstruct用于代码和测试中的设置 看来注释将被排除在外Java 11 https www baeldung com spring postconstruct predestro

随机推荐

  • C# 修改身份或添加声明

    应用程序是 Blazor Server NET Core 5 0 我正在使用 NET Core 的身份系统 但遇到了问题 我希望将这个人的名字与身份一起存储 以便我可以轻松地调用它 目前我有一个类覆盖基本身份 public class Ap
  • 如何访问 Firefox Web 控制台命令历史记录?

    在 Google Chrome 开发工具中访问最后 30 个 javascript 控制台命令相当容易 取消对接开发工具并按Ctrl Shift I在其中检查 devtools 本身 在新的开发工具窗口中 在控制台中键入以下命令 gt lo
  • 如何删除 MongoDB 中的所有数据库?

    I have a list of databases in my MongoDB How to delete all databases except local admin and config 您可以使用getDBNames 方法中的m
  • iphone sdk 4.2.1 的问题

    可能是个愚蠢的问题 当在调试模式下在设备上运行我的项目时 我收到很多警告 其中包含以下字符串 警告 无法读取符号 Developer Platforms iPhoneOS platform DeviceSupport 4 2 1 8C148
  • 创建 Date 对象时是否应该使用“final”修饰符? [复制]

    这个问题在这里已经有答案了 可能的重复 什么时候应该使用final https stackoverflow com questions 154314 when should one use final Java 程序员什么时候更喜欢使用 f
  • URL 中带有斜杠“/”的路由参数

    我知道您可以在路由属性中应用通配符以允许 例如日期输入例如 Route orders orderdate 通配符的问题仅适用于 URI 中的最后一个参数 如果想要具有以下 URI 我该如何解决该问题 Route orders orderda
  • C#:WebRequest 代理 = null 副作用

    有谁知道吃药有什么副作用吗webrequest proxy null在 HttpWebRequest 中 MSDN NET Framework 4 说要使用GlobalProxySelection GetEmptyWebProxy 当不应该
  • 这应该是这样的吗?

    我的服务器上有这段代码here http smplsite com sandbox2 process asmx 是的 我知道 ASMX 是一个坏主意 但 WCF 由于某种原因根本不起作用 using System Web using Sys
  • 通过 Drupal 执行查询时 Apache Solr 结果不同 – 为什么?

    我正在尝试创建一个自定义搜索界面阿帕奇 索尔 http lucene apache org solr using Drupal http drupal org 我对结果有一些奇怪的问题 当我从 Solr 的内置 Web 界面运行它时 相同的
  • Magento - 客户地址国家/地区下拉列表问题

    我正在使用 Magento CE 1 7 0 2 最近从 1 4 2 0 升级 在后端编辑 创建客户地址时 国家 地区下拉字段为空 无法选择任何选项 它也不适用于前端地址下拉列表 任何想法导致此问题 我能找到的唯一代码提示是 this de
  • C# 中套接字重用有什么好处

    我正在开发开源套接字服务器库 https sourceforge net projects socketservers https sourceforge net projects socketservers 我想向这个库添加套接字重用功能
  • Android 的新 Jack 编译器真的那么慢吗?

    在我的一些 Android 项目中 我发现自从使用新的 Jack 编译器以来 构建速度变得相当慢 我需要它来使用 lambda 等 Java 8 功能 但漫长的建设时间有点令人不安 所以我建立了一个新的Android项目 它只包含一个Mai
  • 在内存中强制渲染 WPF 控件

    我有以下代码 void Test currentImage Source GetBitmap RenderTargetBitmap rtb new RenderTargetBitmap 100 100 96 0 96 0 PixelForm
  • EMR 5.21、Spark 2.4 - Json4s 依赖关系已损坏

    Issue 在 EMR 5 21 中 Spark Hbase 集成已损坏 df write options format save 失败 原因是 Spark 2 4 中的 json4s jackson 版本 3 5 3 EMR 5 21它在
  • 使用 pytest 运行trace.py

    我正在尝试使用trace py跑步时pytest 我知道pytest有自己的覆盖率插件pytest cov但限制 每行执行的次数不可用 不允许我现在使用它 同样对于coverage py 我正在尝试这个命令 python3 4 m trac
  • 使用 WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH 获取所有 MotionEvent

    我的问题直接涉及到这个question https stackoverflow com q 4481226 394933 这个问题的答案表明了如何创建一个ViewGroup 将其嵌入到WindowManager 并允许WindowManag
  • Asp.net 自动完成扩展器不工作

    我想让文本框使用数据库自 动完成 我使用了以下代码 但在输出扩展器中显示了 html 代码 它甚至不执行函数后面的代码 我使用的以下代码无法正常工作 ASPx 页面
  • 如果项目存在于另一个数组中,则从数组中删除它们[重复]

    这个问题在这里已经有答案了 假设我有以下两个包含整数的 PHP 数组 foo array 1 5 9 14 23 31 45 bar array 14 31 36 我想删除其中的项目 foo其中存在相同的值 bar 所以这个过程的结果将创建
  • Wix引导程序

    我使用 WPF 编写了一个托管 wix 引导程序 实际的安装步骤需要链接多个 msi exe 和批处理文件
  • 最终方法是内联的吗?

    Java的final方法会自动内联吗 很多书说可以 很多书说不 方法的内联由 JIT 编译器执行 而不是 javac 现代 JIT 编译器 包括 Hotspot 通常甚至可以内联非最终方法 并在必要时适当地 撤消 优化 他们基本上非常聪明