作者:郎波 出版社:清华大学出版社
第一章 绪论
1.java语言特点:简单,面向对象,分布式,解释型,强壮,安全,体系结构中立,可移植,高性能,多线程,动态。
简单:去掉指针、多继承和运算符重载、GC内存自动回收机制、可重用类库
面向对象:封装(模块化),继承,多态(抽象类和接口)
分布式:数据分布(URL类)、操作分布(Applet)
解释型:半编译半解释,可移植性。
强壮:GC,例外处理,强类型语言
安全:内存分配及布局、数字签名,验证和访问权限控制
体系结构中立:不依赖平台,统一语言文本,类库。
可移植性:解释型、体系结构中立
高性能:字节码,即使编译
多线程:线程同步
动态:类运行时动态装载
2.java 2平台三版本:J2SE(标准版,桌面应用程序)、J2EE(企业版,web开发)、J2ME(微缩版,手机端)。
3.JDK=java SE development kit (java开发工具集)
JRE=java SE runtime environment (java程序运行环境)
4.Java EE 多层模型各层次:客户端表示层、服务器端表示层、应用逻辑层、企业信息系统层。
5.java执行过程:编译java程序(*.java)—编译器—java字节码(*.class)—解释器—程序。
6.java跨平台:一次编译,到处运行(.CLASS字节码)。
7.Java API:java类库集合,以包的形式组织,也可以说是java应用程序编程接口,包括三类包:核心包java和各种扩展功能的类库:javax和org。
java 语法机制概述:
1.类
单继承,多继承必须用接口来实现。
引入abstract和final修饰词,abstract修饰抽象类,抽象类的抽象方法只定义方法的声明,没有方法体。只能做父类使用,不能直接new抽象对象。
final可以修饰类,属性和方法。final类不能作为父类被继承。final属性赋初值后不允许改变成为常量。final修饰方法不可重写。
2.接口
接口是一种抽象类,接口中只能出现静态常量或抽象方法的定义。接口用于实现多继承。
3.程序包
程序包是相关类或接口的集合。通过import语句引入,java系统提供的可重用类都以包的形式供使用。
4.多线程
java直接在语言级支持多线程。提高了可靠性和可移植性。
5.取消指针
java动态内存申请通过new运算符实现,得到的不是指针而是引用,通过该引用找到目标对象。java只能通过引用访问数组元素或者对象,没有指针的概念。
java运行系统与JVM
1.java运行系统一般包括以下几个部分:类装配器,字节码验证器,解释器,代码生成器和运行支持库。
2.java系统运行的是字节码,即.class文件。
3.java字节码两种运行方式:即时编译方式和解释执行方式,其中即时编译方式效率较高。
4.虚拟机的代码存储在.class文件中,并且每个.class文件最多包含一个public class类的代码。
5.JVM规范定义了一组抽象的逻辑组件,包括指令集,寄存器组,类文件的格式,栈结构,垃圾收集程序和存储区。
java环境变量配置:
1.系统变量——变量名:JAVA_HOME 变量值:java安装路径。
变量名:PATH 变量值:;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
变量名:CLASSPATH 变量值:.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar
2.检查配置:cmd——运行java -version,再运行javac -version。如果两个都有信息,则表示环境变量配置OK。(JDK中,java编译器为javac,解释器为java)
java源程序结构:
1.必须以包声明,引入类声明,类和接口定义的顺序出现。
2.main方法必须在public class类中,声明必须是:public static void main(string args[ ]){ }
3.一个源文件只能有一个public class定义,并且源文件的名字与包含main()方法的该public class的类名相同(大小写也要一致),扩展名必须是.java。