84669 person learning
152542 person learning
20005 person learning
5487 person learning
7821 person learning
359900 person learning
3350 person learning
180660 person learning
48569 person learning
18603 person learning
40936 person learning
1549 person learning
1183 person learning
32909 person learning
ringa_lee
首先普及一下,早期的Android版本是Java 6,Android 4.4版本之后可以使用Java 7。另外,早期版本也可以通过Java 7进行编译,只要你不使用try resource这个新特性即可。
try resource
那么再回答你的问题,为什么Android不能通过Java 8编译。这里并不是说Android不能通过Java 8编译,而是因为运行在每个人手机上的Android系统跑的还是基于Java 6或者Java 7的Dalvik,即使你通过Java 8编译了含有新特性的Android程序,那也没法运行在这些机器上。另外,Android并非纯Java编译,在编译后还需要将class文件转换成dex文件,这就与Android SDK紧密相连了,所以Android SDK不支持Java 8,也就没法通过修改JDK来提升。
Dalvik
Android Studio中使用的lambda表达式教程Android Studio中使用的lambda表达式
首先普及一下,早期的Android版本是Java 6,Android 4.4版本之后可以使用Java 7。另外,早期版本也可以通过Java 7进行编译,只要你不使用
try resource
这个新特性即可。那么再回答你的问题,为什么Android不能通过Java 8编译。这里并不是说Android不能通过Java 8编译,而是因为运行在每个人手机上的Android系统跑的还是基于Java 6或者Java 7的
Dalvik
,即使你通过Java 8编译了含有新特性的Android程序,那也没法运行在这些机器上。另外,Android并非纯Java编译,在编译后还需要将class文件转换成dex文件,这就与Android SDK紧密相连了,所以Android SDK不支持Java 8,也就没法通过修改JDK来提升。Android Studio中使用的lambda表达式教程
Android Studio中使用的lambda表达式