java概念
java本身是一种面向对象的语言,最显著的特性有两方面,一是所谓的“书写一次,到处运行”(write once ,run anywhrer),能够非常容易的获得跨平台能力,另外就是垃圾收集机制(garbage collection)java通过垃圾收集器回收分配内存,大部分情况下,程序员不需要自己操心内存的分配和回收。
日常中我们会接触到JRE(java Runtime Environment) ,或者JDK(Java Development kit),也就是java运行环境,包含JVM和java类库,以及一些模块等。耳JDKk可以看做是JRE的一个超类,提供连带更多的工具,比如诊断工具,编译器等。
对于“java是解释性语言”这句话的说法是不太准确的。我们开发java的源代码,首先通过javac编译为字节码(bytecode),然后,在运行时java虚拟机内嵌的解释器将字节码转换成为最终CPU可以执行的机器码。但常见的JVM,比如我们大多数情况下使用的Orcale jvm JIT just int time 即时编译系统,JIT能够在程序运行时将热点代码编译成机器码这样就能在运行时直接使用机器码,提高了程序的运行效率。所以说java是解释性和编译性共存的语言。