问题内容: 如果是代理设计模式,那么JDK的动态代理和第三方动态代码生成API(例如CGLib)有什么区别? 使用这两种方法之间的区别是什么?何时应该优先选择另一种方法? 问题答案: JDK动态代理只能按接口进行代理(因此,您的目标类需要实现一个接口,然后该接口也可以由代理类实现)。 CGLIB(和javassist)可以通过子类化创建代理。在这种情况下,代理将成为目标类的子类。无需接口。 因此,
问题内容: 如何说服Windows使用JDK而不是JRE? 问题是Windows忽略了它,也忽略了我将JDK bin目录作为路径中的第一项的事实。 当我从命令行运行时,它运行1.7 JRE而不是调用我的JDK 1.6安装。 我的猜测是这是1.7特有的问题,Windows 7正在使用注册表进行某些操作。 有想法该怎么解决这个吗? 编辑 :糟糕。我的意思是“路径”时,我在上面写了“ classpath
问题内容: 如何创建并发的List实例,可以在其中按索引访问元素?JDK是否可以使用任何类或工厂方法? 问题答案: 中有一个并发列表实现。特别是。
问题内容: 我想看看Java API中的方法是做什么的。所以我想要JDK源代码。在重新安装Linux之前,我先安装了包含所有正式源代码的软件包。我只需要告诉Eclipse这个文件在哪里,就可以看到代码。但是现在我没有文件了… 所以问题是:在哪里可以找到它? 问题答案: 你尚未说出所需的版本, JDK 8源代码的存档以及JDK 7和JDK 6。 此外,你可以浏览或克隆的Mercurial库:8,7,
问题内容: 我有两个JDK,分别用于Java 6和7。 我想同时使用这两个项目。最初,我们仅针对1.6构建。我在项目设置中看到可以选择1.5、1.6 1.7作为编译器级别。 这些选项如何添加到IDE中?我从未安装过Java 1.5。假设我想要Java 1.4。我如何将其显示在列表中?我在我的IDE首选项中添加了两个不同的JRE,但是下拉菜单中没有这些。 问题答案: 你可以在中管理可用的编译器列表。
问题内容: 如何在Mac上更改Java的默认版本? 问题答案: 除了上述答案外,我在我的代码行(或.zshrcMacOS 10.15+)中添加了以下几行,这使得切换(包括@elektromin对Java 9的注释)非常方便: 插入后执行 我可以通过键入以下命令切换到Java 8:
问题内容: 我正在尝试在Windows 7 x64系统上安装Android SDK。已安装,但Android SDK安装程序拒绝继续,因为它找不到JDK安装。 这是一个已知的问题?有解决方案吗? 问题答案: 当您收到通知时,按返回,然后按下一步。这次它将找到JDK。
问题内容: 我不知道该如何工作。 场景: 我有一个用gradle构建的应用程序 该应用程序使用JavaFX 我想要的是 使用一个变量(针对每个开发人员的机器定义),该变量指向JDK的安装,该安装将用于构建整个应用程序/测试/ … 我考虑过要文件,定义变量。就像是 我不想要的 指向JAVA_HOME所需的JDK 我可以接受很多建议: 定义系统环境变量的解决方案,我可以在脚本中检查 中定义的变量 仅针
问题内容: Oracle和OpenJDK之间有什么重要区别吗? 例如,垃圾回收和其他JVM参数是否相同? 两者之间的GC工作方式是否有所不同? 问题答案: OpenJDK和Oracle JDK都仅由Oracle当前创建和维护。 OpenJDK和Oracle JDK是通过TCK(Java技术认证套件)的同一Java规范的实现。 JDK的大多数供应商都是通过OpenJDK编写的,它们做了一些调整[主要
问题内容: 我正在尝试调试 “ .class文件中的版本号错误” java中的错误,有没有办法让我检查文件的版本? 我正在使用,但我的版本是1.6.0_13。 我正在以eclipse设置为1.5的兼容模式进行编译,我认为这是可行的… 问题答案: 你正在命令行(针对名为MyClass的类)中寻找以下内容: 在Unix / Linux上: 在Windows上: 你需要结果中的主要版本。以下是一些示例值
问题内容: 我是一个初学者,现在我想用java启动GUI应用程序。我开始阅读一些有关FX的书籍,但并未在JDK11上编译..我是否需要使用jdk8还是有什么办法可以在jdk11上完成? 问题答案: JavaFX已脱离JDK11(Oracle的官方JDK和OpenJDK)的捆绑。为了将JavaFX与JDK11结合使用,您必须下载独立的JavaFX11运行时。
问题内容: 由于这个问题,目前Cordova无法在Java 9上运行(如果我错了,请纠正我)。 这里讨论了一个类似的问题,但是建议的解决方案涉及删除Java 9或将JAVA_HOME环境变量重置为指向Java 8,但是两者都有副作用,即所有其他Java应用程序都将在Java 8上运行。 那么,如何将Cordova设置为使用Java 8,而其余的应用程序仍在Java 9上呢? 问题答案: …将环境变
问题内容: 我需要知道JDK在我的计算机上的位置。 在cmd中运行时,它将版本显示为“ 1.6.xx”。要在我尝试使用的计算机上查找此SDK的位置,但仅显示“ JAVA_HOME”(因为我的环境变量中未设置“ JAVA_PATH”变量)。 问题答案: 如果你使用的是Linux / Unix / Mac OS X: 尝试这个: 应该输出确切的位置。 之后,你可以自己设置环境变量。 在我的计算机上(M
问题内容: 我想确保一切都可以通过复制Java文件夹的内容并设置环境变量来完成。 我通常在虚拟机中运行安装程序,压缩\ java文件夹内容,返回虚拟机的快照,然后解压缩压缩文件。 我找不到可以将最新的JRE / JDK作为zip文件提供的地方… http://java.sun.com/javase/downloads/index.jsp http://download.java.net/jdk6/
问题内容: JVM,JDK,JRE和OpenJDK有什么区别? 我在用Java编程时遇到了这些短语,它们之间有什么区别? 问题答案: 虚拟机 在Java虚拟机(JVM)是运行Java字节代码的虚拟机。JVM不理解Java源代码;这就是为什么需要编译文件以获取包含JVM可以理解的字节码的文件的原因。它也是允许Java成为“便携式语言”的实体(编写一次,可以在任何地方运行)。实际上,对于不同的系统(W