目录
Java技术分为哪三个版本?分别包含哪些内容?
1).JavaSE(Java Platform Standard Edition,标准版)
用来开发桌面应用、C/S结构网络应该是JavaEE的基础,是Java技术体系的核心。
2).JavaEE(Java Platform,Enterprise Edition,企业版)
用来开发企业环境下的应用程序,通常来说,JavaEE包含JSP、Servlet、JDBC、XML等13种技术。
3).JavaME(Java Platform Micro Edition,微型版)
用于小规模的嵌入式开发,适合手机等嵌入式设备。
Java语言拥有哪些特点?请分别具体说明。
1).跨平台(可移植、一次编写、处处运行)
*简言之,跨平台的含义是使用Java语言开发应用,不需要为不同的平台开发不同的程序,而是只开发一套应用,就可以运行在不同的平台上。
2).解释执行
*解释执行的含义是,Java程序编译之后,只是生成了class文件,成为字节码,并不是机器码。在执行时,JVM中的解释器,会根据当前平台的特征,对class文件进行解释,生成符合当前规范的机器码,得以运行。
3).面向对象的语言(应逐步建立面向对象的编程思想)
*Java语言是一门面向对象语言,具备面向对象语言三大特征:封装、继承、多态。
4).自动垃圾回收
*程序员无需回收内存。系统级线程跟踪每一个存储空间的分配情况,在JVM空闲周期,垃圾收集线程检查,释放内存。
5).鲁棒
*鲁棒即健壮的意思,Java语言从编译到运行期,都有很多机制,以保证其程序的鲁棒性,如异常处理机制,也是保证鲁棒性的重要手段。
6).支持多线程编程
*支持多线程编程是很多编程语言能够实现的功能,Java也不例外。
7).学习Java编程相对容易
*Java语言取消了很多容易混淆的概念,比如多继承、goto语句等。Java也没有指针的概念,也不支持头文件。
什么是JDK?什么是JRE?两者之间有什么关系?
1).JDK(Java Development Kit):给Java开发人员使用的工具包,包括Java的开发工具,也包括JRE。其中开发工具中包括编译工具(javac.exe)、运行工具(java.exe)、打包工具(jar.exe)等。
2).JRE(Java Runtime Environment):Java的运行环境,包括Java虚拟机和Java程序运行所需的核心类库。
3).
*JDK = JRE + 开发工具
*JRE = JVM + 核心类库
如何使用命令行(DOS界面下)编译运行Java类?
1).在记事本中编写Java类
Public class Test{
Public static void main(String[] args){
System.out.println(“Test”);
}
}
2).使用命令行编译运行
*javac Test.java
*java Test
在java中创建类时需要注意哪些事项?
1).Java的源文件均为 .java文件。
2).一个java文件中可以有多个类,但是通常建议为一个。
3).java文件名必须与public类名同名,如果类不是public,文件名可以不与类名相同,但是不建议如此。
4).一个Java类如果需要运行,必须有符合规范的main方法,即public static void修饰的main方法,参数为String[]。
Java 是解释执行”,这句话正确吗?
对于“Java 是解释执行”这句话,这个说法不太准确。我们开发的 Java 的源代码,首先通过 Javac 编译成为字节码(bytecode),然后,在运行时,通过 Java虚拟机(JVM)内嵌的解释器将字节码转换成为最终的机器码(解释执行)。但是常见的 JVM,比如我们大多数情况使用的 Oracle JDK 提供的 Hotspot JVM,都提供了JIT(Just-In-Time)编译器,也就是通常所说的动态编译器,JIT 能够在运行时将热点代码编译成机器码,这种情况下部分热点代码就属于编译执行,而不是解释执行了。
java“一次编译、到处运行”
“一次编译、到处运行”说的是Java语言跨平台的特性,Java的跨平台特性与Java虚拟机的存在密不可分,可在不同的环境中运行。比如说Windows平台和Linux平台都有相应的JDK,安装好JDK后也就有了Java语言的运行环境。其实Java语言本身与其他的编程语言没有特别大的差异,并不是说Java语言可以跨平台,而是在不同的平台都有可以让Java语言运行的环境而已,所以才有了Java一次编译,到处运行这样的效果。
严格的讲,跨平台的语言不止Java一种,但Java是较为成熟的一种。“一次编译,到处运行”这种效果跟编译器有关。编程语言的处理需要编译器和解释器。Java虚拟机和DOS类似,相当于一个供程序运行的平台。
程序从源代码到运行的三个阶段:编码——编译——运行——调试。Java在编译阶段则体现了跨平台的特点。编译过程大概是这样的:首先是将Java源代码转化成.CLASS文件字节码,这是第一次编译。.class文件就是可以到处运行的文件。然后Java字节码会被转化为目标机器代码,这是是由JVM来执行的,即Java的第二次编译。
“到处运行”的关键和前提就是JVM。因为在第二次编译中JVM起着关键作用。在可以运行Java虚拟机的地方都内含着一个JVM操作系统。从而使JAVA提供了各种不同平台上的虚拟机制,因此实现了“到处运行”的效果。需要强调的一点是,java并不是编译机制,而是解释机制。Java字节码的设计充分考虑了JIT这一即时编译方式,可以将字节码直接转化成高性能的本地机器码,这同样是虚拟机的一个构成部分。