Questions tagged «java-7»

Java SE版本7于2011年发布。与版本6相比,新功能包括动态语言支持,压缩指针,小语言扩展,椭圆曲线加密,新的网络协议,在字符串中使用字符串作为大小写值的功能。 switch语句,以及各种系统库扩展。

30
在此环境中不提供编译器。也许您是在JRE而不是JDK上运行?
我正在使用m2eclipse在Eclipse中编译项目。我像这样在Eclipse中设置JDK路径: Windows-->preferences-->installed jres--> jdk1.7.xx path 但这显示了一个错误 [ERROR] COMPILATION ERROR : [INFO] ------------------------------------------------------------- [ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK? [INFO] 1 error [INFO] ------------------------------------------------------------- [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 1.424s [INFO] Finished at: …

7
Java 7中的菱形运算符(<>)有什么意义?
Java 7中的菱形运算符允许如下代码: List&lt;String&gt; list = new LinkedList&lt;&gt;(); 但是,在Java 5/6中,我可以简单地编写: List&lt;String&gt; list = new LinkedList(); 我对类型擦除的理解是这些完全相同。(无论如何,泛型都会在运行时删除)。 为什么要打扰钻石呢?它允许哪些新功能/类型安全?如果它没有产生任何新功能,为什么他们将其称为功能?我对这个概念的理解有缺陷吗?

27
在Mac OS X上安装了Java 7,但Terminal仍在使用版本6
我已经安装了从oracle网站下载的JDK 7u7。但是安装后,终端仍然显示Java版本6 $java -version java version "1.6.0_35" Java(TM) SE Runtime Environment (build 1.6.0_35-b10-428-11M3811) Java HotSpot(TM) 64-Bit Server VM (build 20.10-b01-428, mixed mode) 知道为什么Java 7没有显示吗? 回答:好的,问题已经解决。答案是:我发现我的终端机具有.bash_profile,并且java home变量设置为1.6 export JAVA_HOME="/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home" 因此,这是每当我打开新的终端窗口时导致问题的行。只需删除此行即可解决问题。您仍然需要遵循@aleroot所说的内容,但是如果这对您不起作用,请检查.bash_profile(或.bashrc)设置文件,以查看您以前是否导出了任何Java版本。
391 java  macos  java-7 

9
“ Java并发实践”是否仍然有效?[关闭]
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗?更新问题,使其成为Stack Overflow 的主题。 3年前关闭。 改善这个问题 是Java并发在实践中是否仍然有效?我想知道本书中描述的思想,概念和实现是否仍然与最新的Java版本兼容。 我问,因为最新版本是2006年完成的。



8
Android的Java 7语言功能
只是想知道是否有人尝试过将新的Java 7语言功能用于Android?我知道Android会读取Java吐出的字节码并将其转换为dex。所以我想我的问题是它可以理解Java 7的字节码吗?
188 java  android  bytecode  java-7 

8
如何在Android Studio和Gradle中设置-source 1.7
尝试在Android Studio中编译项目时出现以下错误: Gradle: error: diamond operator is not supported in -source 1.6 我在找到的所有项目首选项中都将1.7设置为目标。此外,项目SDK的1.7 SDK下显示的路径也是java 1.7安装的正确路径。 即使我在终端中运行java -version,它也告诉我我正在Java 1.7上运行。 我试图将JAVA_HOME env变量设置为此: /Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home 错误不会消失。如何消除错误?

2
Java SafeVarargs批注,是否存在标准或最佳实践?
我最近遇到了Java @SafeVarargs批注。搜寻是什么使Java中的可变参数功能不安全,这让我感到很困惑(堆中毒?已删除类型?),所以我想知道一些事情: 是什么使可变参数Java函数在@SafeVarargs某种意义上不安全(最好以深入示例的形式进行解释)? 为什么注释留给程序员自己决定?这不是编译器应该能够检查的东西吗? 是否必须遵循一些标准以确保其功能确实是安全的?如果没有,有哪些最佳实践来确保呢?


16
如何将特定的Java版本设置为Maven
在我的机器上,我安装了两个Java版本:(我手动安装的1.6和1.7)。我需要两个都用于不同的项目。但是对于Maven我需要1.7,现在我的Maven使用1,6 Java版本,如何设置Maven使用1.7?
162 maven  java-7  java-6 

5
如何在JDBC中使用try-with-resources?
我有一种使用JDBC从数据库中获取用户的方法: public List&lt;User&gt; getUser(int userId) { String sql = "SELECT id, name FROM users WHERE id = ?"; List&lt;User&gt; users = new ArrayList&lt;User&gt;(); try { Connection con = DriverManager.getConnection(myConnectionURL); PreparedStatement ps = con.prepareStatement(sql); ps.setInt(1, userId); ResultSet rs = ps.executeQuery(); while(rs.next()) { users.add(new User(rs.getInt("id"), rs.getString("name"))); } rs.close(); ps.close(); con.close(); } catch …

8
类路径资源的java.nio.file.Path
是否有API可以获取类路径资源(例如,我将从中获得的资源Class.getResource(String))java.nio.file.Path?理想情况下,我想将新的PathAPI与类路径资源一起使用。
143 java  java-7  nio2 

2
如何设置IntelliJ IDEA项目SDK
我刚刚安装了IntelliJ IDEA,当我尝试创建我的第一个Project时,它要求我设置Project SDK。当我单击“ JDK”时,它要求我选择JDK的主目录,如下图所示。 我在找到它的位置时遇到了麻烦。

2
Java:int数组使用非零元素初始化
根据JLS,int数组应在初始化后立即用零填充。但是,我面临的情况并非如此。这种行为首先在JDK 7u4中发生,并且在以后的所有更新中也发生(我使用64位实现)。以下代码引发异常: public static void main(String[] args) { int[] a; int n = 0; for (int i = 0; i &lt; 100000000; ++i) { a = new int[10]; for (int f : a) if (f != 0) throw new RuntimeException("Array just after allocation: "+ Arrays.toString(a)); Arrays.fill(a, 0); for (int j …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.