2013-08-07 43 views
4

Android是一个伟大的移动平台,它使用Java(一个很好的理由)一个非常受欢迎的编程语言。 但是Java语言在不断发展,向前发展,第7版的小语言改进已经有几年了,第二年就是第8版的期待已久的lambda。Java 7/8在Android?

我的问题是:Android会运行Java 7或8或采取他们的一些构造?

更新:只为非信徒:在Android Kitkat 4.4中,我们可以使用Java 7的好东西:ARM,切换字符串,钻石等。是啊! 根据工具团队的说法,我希望不需要太长的时间来获得lambda表达式和Java 8特性

+8

鉴于我们不是Android开发人员,我们不知道也不能回答您。 – thegrinner

回答

9

Android根据工具团队今天可以使用Java 7,尽管我个人尚未尝试过。这意味着您可以使用Java 7编译器编译Android项目,并且构建工具将接受Java 7编译器输出。 AFAIK,只增加了一个新的字节码(invokedynamic,或类似的东西),这是解释器,而不是javac编译器。由于Java 8并不存在于最终形式中,并且由于Google不倾向于发布这样的未来细节(特别是在飞行中提供诉讼),所以当我们其他人知道Java Java 8之后的某些时候船舶。

+0

你的意思是所有的Java 7结构像'java.awt.Point'都在Android中的某处,或者Java 7 Runtime以某种方式在Android上工作?我很困惑的声明“Android与Java 7合作” –

+0

@WilliamMorrison:都不是。对不起,我的意思是Java 7编译器的输出将与构建工具一起使用来创建APK。鉴于机上诉讼,如果Java 7课程很快(如果有的话)被添加到Android,我会感到惊讶。 Android有自己的运行时(Dalvik VM)。 – CommonsWare

+0

那么,我可以使用Android的资源尝试功能吗? –