学习Java前的准备工作
相关概念
什么是JDK?即Java Develop Kit,Java开发工具包。
什么是JRE?即Java Runtime Environment,Java运行环境,通常已包含在J2SDK中了。如果我们仅仅是为了运行Java程序,而不是从事Java开发,我们可以直接下载JRE,在系统上安装。
你讲的是Java1还是Java2? 1998年12月,SUN公司发布了JDK1.2,开始使用“Java 2”这一名称,目前我们已经很少使用JDK1.1版本,所以我们说的Java都是指Java2。J2SDK当然就是Java 2 Software Develop Kit。
·学习Java前的准备工作
构建Java开发环境的相关下载
JDK 1.6:http://download.developers.sun.com.cn/jdk/6u13/jdk-6u13-windows-i586-p.exe
JDK API Document:http://download.developers.sun.com.cn/javadoc/jdk6/docs/zh/api/index.html
Eclipse 3.5:
http://www.eclipse.org/downloads/download.php?file=/eclipse/downloads/drops/R-3.5-200906111540/eclipse-SDK-3.5-win32.zip
NetBeans 6.7:
http://zh-cn.netbeans.org/download/6.7/ml/bundles/netbeans-6.7-ml-javase-windows.exe
第01章 Java概述
·本章学习目标
了解Java语言的发展历史和工作原理
掌握Java面向对象编程的基本思想
初步接触Java程序的两种形式:Java应用程序和Java小程序
学习并阅读Java帮助文档
学会安装Java开发环境和配置环境变量
掌握Java程序的编辑、编译和运行过程
·本章主要内容
Java语言的发展史
Java的工作原理
Java的体系结构
构建Java程序
Ø Java程序规范
Ø Java开发环境
§1.1 Java语言简介
1.1.1 Java语言的发展历史
Java来自于Sun公司的一个叫Green的项目,其最初目的是为家用消费电子产品开发一个分布式代码系统,这样可以把E-mail发给电冰箱、电视机等家用电器,对它们进行控制,和它们进行信息交流。开始,准备采用C++,但C++太复杂,安全性差,最后基于C++开发了一种新的语言Oak(Java的前身)。但是,当Sum公司准备注册Oak这门语言时,发现Oak这个名称已经被其他语言占用,最终更名为Java。
随着因特网和Web的迅速发展,能够运行于不同平台的软件越来越受欢迎。因特网由不同的、分布式的系统组成,其中包括各种类型的计算机、操作系统和CPU。而Java是一种用于网络的精巧而安全的语言,因特网的这一特性极大地促进了Java语言的发展。
1.1.2为什么要使用Java语言
Ø 简单的——Java最初是为对家用电器进行集成控制而设计的一种语言,因此它必须简单明了。Java语言的简单性主要体现在三个方面:
1、Java的风格类似于C++,因而C++程序员初次接触Java语言,就会感到很熟悉。从某种意义上讲,Java语言是C及C++语言的一个变种,因此,C++程序员可以很快地掌握Java编程技术。
2、Java摒弃了C++中容易引发程序错误的一些特性,如指针、结构、枚举以及内存管理等。
3、Java提供了丰富的类库,可以帮助我们很方便的开发Java程序。
Ø 面向对象的——面向对象可以说是Java最重要的特性,所以它支持继承、重载、多态等面向对象的特性。
Java语言的设计是完全面向对象的,它不支持类似C语言那样的面向过程的程序设计技术。
Ø 健壮的——Java致力于检查程序在编译和运行时的错误。Java也是一种强类型的语言,其类型检查比C++还要严格。类型检查帮助我们检查出许多开发早期出现的错误。Java自己负责内存管理,提供了垃圾内存回收机制,有效的避免了C++中最头疼的内存泄漏问题。
Ø 安全的——Java的安全性可从两个方面得到保证。一方面,在Java语言里,删除了指针和释放内存等C++功能,避免了非法内存操作。另一方面,通过Java的安全体系架构来确保Java代码的安全性。当我们从网上下载Java代码在本地执行时,Java的安全架构能确保恶意的代码不能随意访问我们本地计算机的资源,例如:删除文件,访问本地网络资源等操作都是被禁止的。
Ø 解释的——Java代码是解释执行的,我们使用Java编译器将Java代码编译成字节码,这是一种中间代码,然后由Java解释器解释执行。而C++程序是编译执行的,C++程序代码被编译为本地机器指令,然后执行。
Ø 与平台无关的(跨平台)——Java作为一种网络语言,其源代码被编译成一种结构中立的中间文件格式。只要有Java运行系统的机器都能执行这种中间代码。Java源程序被编译成一种与机器无关的字节码格式,在Java虚拟机上运行。
迄今为止,Java的这一特点是其他所有开发语言都不具备的。
Ø 多线程的——Java语言的一个重要特性就是在语言级支持多线程的程序设计。多线程就好像我们做一张桌子,如果你一个人完成这张桌子—就好像单线程,那么你需要先做桌面,做完桌面后,再做4个桌子腿,如果现在有5个人来做桌子—在程序中开辟5个线程,其中1个人做桌面,另外4个人分别做4个桌子腿,那么这两种方式效率的高低,相信大家都能区分出来。
Ø 动态的——Java的动态特性是其面向对象设计方法的扩展。它允许程序动态地装入运行过程中所需要的类。Java编译器不是将对实例变量和成员函数的引用编译为数值引用,而是将符号引用信息在字节码中保存下来,传递给解释器,再由解释器在完成动态连接类后,将符号引用信息转换为数值偏移量。
1.1.3 Java虚拟机(JVM)
Java语言最重要的特点就是可以在任何操作系统中运行。Java程序的跨平台是通过Java虚拟机(JVM)来实现的。
Java虚拟机是用软件模拟实现的虚拟计算机,定义了指令集、寄存器集、类文件结构栈、垃圾收集堆、内存区域等,提供了跨平台能力的基础框架。
Java程序是将源程序先编译生成一种中间的字节码文件,然后由Java虚拟机解释执行。
1.1.4 java的主要应用领域
1、嵌入式技术。
2、Application/Applet、JavaBean的PC应用。
3、基于CORBA/RMI的分布式应用、Servlet、JSP实现电子商务等。
4、基于EJB的Java2企业级信息系统、访问目录服务所需的JNDI(Java Naming And Directory Interface,Java命名和目录接口)、分布式事务JTS(Java Transaction Service,Java事务服务)等。
§1.2 Java的体系结构
1.2.1 J2SE体系结构图
Java平台的三个版本:
Ø JSE(Java Platform, Standard Edition)—标准版,是用于工作站、PC机的Java标准平台;
Ø JEE(Java Platform, Enterprise Edition)—企业版,可扩展的企业级应用平台;
Ø JME(Java Platform, Micro Edition)—微型版,用于电子产品和嵌入式系统设计。
Java应用程序中的文件类型:源文件(.java文件)和可执行文件(.class文件)。
Java API中的常用包:(参见JAVA API帮助文档)
Ø java.lang—语言包,包含Java基础类(其中Object类是所有Java类层次的根)
Ø java.util—实用包,包含集合、事件、时间等各种实用工具
Ø java.awt—抽象窗口工具包,用于创建用户界面和绘制图形图像
Ø java.text—文本包,用于处理文本、日期、数字和消息等
Ø java.io—通过数据流、序列化和文件系统提供输入和输出
Ø java.applet—提供创建Applet所必须的类
Ø java.net—为网络程序提供类
Ø java.swing—一组“轻量级”的图形设计工具包
Ø java.sql—用于访问和处理服务器端数据源
Ø java.xml—根据XML规范定义XML常量和功能
1.2.2 环境变量的配置
Java开发环境包括:
Ø Java类库(如I/O类库、用户界面类库、网络类库等);
Ø Java解释器;
Ø Java编译器;
Ø Java运行环境;
Ø 安装JDK 1.6;
Ø 配置环境变量;
1、设置Java编译运行程序的路径:
set path=C:"Program Files"Java"jdk1.6.0"bin
2、设置Java包的路径(其中的“.”表示在当前目录下可以执行Java程序)
set classpath=.;C:"Program Files"Java"jdk1.6.0"lib
Ø 测试。
1.2.3 Java程序的组成部分
1、package语句
package import 包名;
2、类—Java程序的基本单位
class 类名{ … }
3、注释—用于对程序进行说明和解释
单行注释: "" 注释的内容(只能在一行)
多行注释:"* 注释的内容1
注释的内容2
*" (可以跨越多行)
1.2.4 Java程序的编辑,编译,运行过程
1.2.5 Java程序的开发、执行流程
Java程序的开发、执行流程如图所示:
源代码à编译à字节码à结果à系统运行à解释执行àjavacàjava
§1.3 Java常用开发工具
Java程序的开发有很多,如文本编辑器、 VJ++、UltraEdit、JCreator、Eclipse、NetBeans和JBuilder等等,我们将使用其中几种最流行的开发工具。
UltraEdit—非常简洁的Java代码编写工具
Eclipse—开源的软件开发平台,包括平台、开发工具箱(JDT)和外挂开发环境(PDE)三部分
NetBeans—由Sum开发的开源的软件开发工具,可支持多种语言,其图形化开发环境很有特色。
§1.4 Java程序编写及运行过程
1.4.1编写和运行Java应用程序
Ø 用记事本来编写输出“Hello World!”的程序。
1、编写源代码
2、编译源代码
3、运行
注意:Java是一种严格区分大小写的编程语言。
Ø 编写在网页上输出“Hello World!”的Applet程序。
1、编写源代码
2、编写HTML文件并调用该小程序
3、编译源代码
4、解释执行
·小结
Java语言的发展历史和现状
Java程序运行的基础及环境配置
Java程序的基本组成
Java程序的编辑、编译、运行过程