一、Java语言的特点
- 强类型:强制约束程序员必须遵守更多的编程规定,编译器能检测程序中尽可能多的错误。
- 编译和解释:用Java编写的源程序在计算机上运行必须经过编译和解释执行两个阶段。编译程序先江Java源程序翻译成与机器无关的字节码(bytecode),不是通常的编译程序将源程序翻译成特定计算机的机器代码。运行时,由Java虚拟机(JVM)中的Java解释器负责将字节码文件解释成为特定的机器码进行运行。
- 自动无用内存回收功能:垃圾收集器(garbage collector)可以自动回收程序不再使用的内存,避免程序遗漏或重复释放内存。
- 面向对象与平台无关:与平台无关是对程序可移植性最直接最有效的支持,“一次编程,到处运行”。
- 可移植性源于两方面: Java的编译和解释的特征(Java虚拟机);2.
Java采用基于国际标准的数据类型,在任何平台上,同一种数据类型是一致的。 - 安全性:取消指针,避免因指针使用不当,访问不该访问的内存空间;提供数组下标检测机制,禁止程序越界访问内存;编译执行过程中进行比较严格的检查:在解释执行前,对字节码文件作检查,防止被恶意改动的字节码文件被解释执行而破坏系统;浏览器限制下载的小应用程序不允许访问本地文件,避免其破坏本地文件。
- 分布式计算
- 多线程:Java的运行环境采用多线程实现。Java语言提供语言级多线程支持,用Java语言能直接编写多线程程序。
二、两种类型的Java程序
- Java程序可分为应用程序(Application)和小应用程序(Applet)两类。
- 两种Java程序的类型的区别:
小应用程序需要嵌入在HTML网页中,当网页被浏览时,在浏览器中运行;且其运行受到严格的安全限制。
应用程序则独立运行,不嵌入网页,也没有那些限制。
另外,这两类程序在代码编写上也有差异:一个小应用程序必须定义为java.applet.Applet类的子类,而不必定义main()方法;应用程序一般不必为java.applet.Applet类的子类,而必须在一个类中定义main()方法。
三、Java开发工具及用途
java源程序扩展名.java
Java字节码文件(扩展名为.class)
垃圾回收机制:内存的释放和回收,让内存可以有效利用起来。自动回收 /解决最常见的程序错误: 内存泄漏,无效内存的引用。
Java虚拟机(JVW)运行进行的操作:1、加载代码2、校验代码3、执行代码。
JDK用于开发Java程序,JRE是Java运行环境; JVM是JRE的子集,JRE是JDK的子集。
Javac:Java编译器,用来将Java程序编译成字节码。
Java:java解释器,执行已经转换成字节码的Java程序。
jdb:Java调试器,用来调试Java程序。
javap:反编译,将类文件还原回方法和变量。
java.doc:文档生成器,创建HTML文件。