为什么说java也适合搞嵌入式开发?
因为嵌入式开发还有做应用层软件方面的工作,即嵌入式软件开发工程师,C++,QT还有你说的Java也可以用到,相比纯软件开发,嵌入式软件开发懂一点点硬件开发的知识更好。
单片机可以用j***a吗?
单片机一般***用汇编语言或C语言来编程,而不是J***a,因为J***a成为了高级语言后就是为了在桌面计算机上运行而不是嵌入式系统上。
J***a的虚拟机需要较大的内存空间和较快的运行速度,而单片机的***有限,不具备运行J***a应用的条件。因此在单片机编程中,使用C语言和汇编语言可以更好地控制硬件和节省***。
单片机目前并不支持直接使用J***a语言进行编程。单片机主要使用汇编语言和C语言进行编程,因为它们能够提供更高效的控制和更快的执行速度。此外,J***a程序需要J***a虚拟机(JVM)的支持来运行,而单片机并没有足够的硬件***支持JVM的运行。因此,如果想要在单片机上进行编程,应该选择适合单片机的编程语言,如C语言或汇编语言。
如果硬件不同,那么j***a还能跨平台吗?
因为J***a程序编译之后的代码不是能被硬件系统直接运行的代码,而是一种“中间码”——字节码。然后不同的硬件平台上安装有不同的J***a虚拟机(JVM),由JVM来把字节码再“翻译”成所对应的硬件平台能够执行的代码。因此对于J***a编程者来说,不需要考虑硬件平台是什么。所以J***a可以跨平台。而C/C++不可以跨平台的原因就是编译后的代码在特定的硬件上可以直接执行,换个硬件平台这些代码就不能被执行了。不过正是因为可以直接执行,所以C/C++程序的执行效率要比J***a程序高
j***a编译后的代码不能直接运行在硬件上,需要通过j***a虚拟机JVM。JVM会把用户的代码转换成对应平台的机器码。
以下是j***a代码编译后运行的简略流程图。JVM可以把用户编写的代码转换成linux或者windows平台的机器码,从而跨平台运行。