一、JAVA语言概述与开发环境

1、编译型语言与解释型语言

编译型语言:针对特定的平台将某种高级语言源代码一次性“翻译”成可被该平台执行的机器码,并包装成该平台所能识别的可执行性程序的格式。编译生成的可执行程序可以脱离开发环境,在特定的平台上独立运行。
解释型语言:使用专门的解释器对源程序逐行解释成特定平台的机器码并立即执行。优点是可以跨平台,只需提供特定平台的解释器即可。缺点是执行效率低,并且不可脱离解释器独立运行。

2、编译和运行JAVA程序

(1)编译:javac -d destdir srcfile
例如:javac -d . Hello.java
.:代表当前目录 Hello.java:代表java源代码文件
结果:在当前路径下生成一个Hello.class文件
(2)运行:java java类
注意:java 后面跟着是一个类名,而不是class文件和源代码文件

3、JAVA程序的入口类

如果某个类能被编译器直接解释执行,那么这个类中必须包含main方法,而且main方法必须使用public static void来修饰,且main方法的形参必须是字符串数组类型,即:String[]。

4、JAVA源文件的命名规则

(1)源文件的后缀必须是.java,不能是其他文件后缀名
(2)通常情况下,JAVA源文件的名称是可以任意的,但如果JAVA程序中定义了一个public类,那么该源文件的文件名必须与该public类的类名相同。注:一个JAVA源文件中最多只能定义一个public类。

5、JAVA语言中的垃圾回收机制

JAVA程序的内存分配和回收都是由JRE在后台自动进行的。JRE会提供一个后台线程来检测和控制,一般是在CPU空闲或者内存不足的时候自动进行垃圾回收。
在JAVA中当没有引用变量指向原先分配给某个对象的内存时,该内存便成为垃圾内存。
垃圾回收的特点:
(1)垃圾回收只能回收内存资源,对于其他的物理资源,如数据库连接、磁盘I/O等资源则无能为力;
(2)为了让垃圾回收机制可以更快的回收那些不在使用的对象,可以将该对象的引用变量设置为null,通过这种方式来暗示垃圾回收机制可以回收该对象;
(3)不同的JVM采用了不同的垃圾回收机制和不同的垃圾回收算法。此外虽然程序员可以通过调用Runtime对象的gc()或者System.gc()等方法来建议系统进行垃圾回收,但依旧不能精确的控制垃圾回收机制的执行
(4)垃圾回收的精确性有两个方面:一是垃圾回收机制可以精确的标记活着的对象,是完全回收所有废弃对象的前提;二是垃圾回收器可以精确的定位对象之间的引用关系,从而保证所有的对象都能被可靠地回收。

猜你喜欢

转载自blog.csdn.net/qq_35381323/article/details/84779554