Java 就业培训教程(张孝祥) - 高清 - 第一章 Java开发.pdf
《Java 就业培训教程(张孝祥) - 高清 - 第一章 Java开发.pdf》由会员分享,可在线阅读,更多相关《Java 就业培训教程(张孝祥) - 高清 - 第一章 Java开发.pdf(25页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 1 第第 1 章章 Java 开发前奏开发前奏 Java 是一种简单易用、完全面向对象、具有平台无关性、且安全可靠的主要面向 Internet的开发工具。自从 1995 年正式问世以来,Java 的快速发展已经让整个 Web 世界发生了翻天覆地的变化。随着 Java Servlet 的推出,Java 在电子商务方面开始崭露头角,最新的 Java Server Page(JSP)技术的推出,更是让 Java 成为了基于 Web 应用程序的首选开发工具。Java 是第一套允许使用者将应用程序通过 Internet 从远端服务器传输到本地机上并执行的一种语言;是一种应用程序提供者不需要知道使用者的
2、计算机硬件与软件环境的语言。比尔盖茨曾经说过:“Java 是最卓越的程序设计语言”。Java 自问世以来,技术和应用发展非常快,在计算机、移动电话、家用电器等领域中无一没有 Java 技术的存在。在 Internet 上,几乎每个网页都包含 Java 程序或代码。由于 Java 的广泛应用,使它受到了史无前例的关注,Java 是一种 Internet 编程语言,Java 还曾是网络动画技术的代名词,Java 虚拟机更是让人耳目一新,Java 简单易学、跨平台而又不失强大功能。相比其他语言,Java 技术平台具有鲜明的优越性。从最初建造 Java 平台开始,就考虑了安全性的问题,即其安全性是建立
3、在 Java 平台的内核中的。其他的语言只是在软件开发时才由用户自行处理其安全问题,难免会有安全漏洞。其次,对于程序员来说,Java 语言比以往其他的任何一门语言都好用,原因在于:Java 有自动垃圾回收的功能,Java 增加了对象和变量的强制类型检查,Java 还取消了指针。目前,Java 技术的架构包括三个方面:J2EE(Java 2 Platform Enterprise Edition)即企业版,是以企业为环境而开发应用程序的解决方案。J2SE(Java 2 Platform Stand Edition)即标准版,是桌面开发和低端商务应用的解决方案。J2ME(Java 2 Platfo
4、rm Micro Edition)即小型版,是致力于消费产品和嵌入式设备的最佳解决方案。J2EE 目前已经成为开发商创建电子商务应用的事实标准。J2SE 是 Java 2 平台的标准版,它适用于桌面系统,提供 CORBA 标准的 ORB 技术,结合 Java的 RMI 支持分布式互操作环境。J2ME提供了HTTP高级Internet协议,使移动电话能以Client/Server方式直接访问Internet的全部信息,不同的 Client 访问不同的文件,此外还能访问本地存储区,提供最高效率的无线交流。Java 技术又有其广泛的内涵:首先,它是一门编程语言,Java 能够创建所有其它传统语言能编
5、写的应用程序,Java 能够编写独立的应用程序,运行在装有 Java 虚拟机的操作系统上。Java 编写的程序经常用在 WWW 环境中(比如 applet,servlet 等),Applet 在浏览器中执行不需要操作系统 JVM 的支持。其次,Java 还是一个开发环境,Java 技术包含一系列的工具:编译器、解释器、文档生成工具、打包工具等等。另外由 Java 2 SDK 提供的 JRE(Java Runtime Envioument)还包括了一个完整的 Java 的类集合,比如基本语言类,GUI 控件类等。最后,Java 也是一个运行环境,我们可以从 Sun 公司提供的 Java2 SDK
6、 中来搭建运行环境,而这一切都是免费的。时至今日,Java 仍然一步步地朝着远大的梦想而迈进,显而易见的成果便是在国际互联网中的应用,如今常见的浏览器也都全面支持 Java Applet 以及衍生出来的 JavaScript 语言等,而市面上可见的操作系统,也利用 Java 的跨平台特性来开发,包括 Windows 系列、各类 UNIX,Linux,2 Mac 等操作系统,都可以看到 Java 的踪迹。这一切都充分说明了Java在计算机语言大家庭中的地位。Java对Internet编程的影响就如同C语言对系统编程的影响一样。1.1 Java 虚拟机及 Java 的跨平台原理 Java 虚拟机(
7、JVM)是可运行 Java 字节码的假想计算机,Java 的跨平台性是相对于其他编程语言而言的,我们这里就用 C 语言的编程与执行过程来同 Java 的编程与执行过程进行对比说明。图 1.1 同 C 语言编程一样,我们首先也要编写 Java 源程序,然后由 Java 编译程序将 Java 源程序编译为 JVM 可执行的代码,即 Java 字节码。Java 源程序编译后生成的字节码文件就相当于 C 源程序编译后的 Windows 上的 exe 可执行文件,JVM 虚拟机的作用类似 Windows 操作系统。在 Windows上运行的是 exe 文件,在 JVM 上运行的是 Java 字节码文件,
8、也就是扩展名为.class 的文件。Windows 执行 exe 可执行文件的过程,就是从 exe 文件中取出一条条的计算机指令,交给 CPU去解释执行。JVM 执行 Java 字节码文件的过程,也是 JVM 虚拟机从 Java 字节码文件中取出一条条的字节码指令交给“CPU”去执行。硬件与软件是可以相互转化的,我们可以用视霸卡硬件解码VCD 数据,也可以用超级解霸软件解码 VCD 数据。执行 Java 字节码的“CPU”可以是硬件,也可以是某个系统上运行的一个软件,这个软件称为 Java 字节码解释程序(也就是 Java 虚拟机)。可见,只要实现了特定平台下的解释器程序,Java 字节码就能
9、通过解释器程序在该平台下运行,这是 Java 跨平台的根本。当前,并不是在所有的平台下都有相应的 Java 解释器程序,这也是 Java 并不是在所有的平台下都能运行的原因,它只能在已实现了 Java 解释器程序的平台下运行。顺便来一句:Java 兼顾解释性与编译性语言的特点,.java 源文件转换成.class 字节码文件的过程是编译型的,.class 在操作系统上运行的过程则是解释型的,Java 虚拟机充当了解释器的作用。关于解释型和编译型的区别就不在这里详细叙述了,不能理解的读者可以自己去查阅相关 3 资料,这并不影响我们学习 Java 的效果。1.2 Java 的开发环境的搭建 Sun
10、 公司提供了自己的一套 Java 开发环境,通常称之为 JDK(Java Development Kit)。Sun 公司提供了多种操作系统下的 JDK,随着时间的推移和技术的进步,JDK 的版本也在不断地升级,如JDK1.2,JDK1.3,JDK1.4。各种操作系统下的 JDK 的各种版本在使用上基本相似,读者可以根据自己的环境,从 Sun 公司的网站 http:/ 上下载相应的 JDK 版本,一般情况下是越新越好。本书的讲解都是基于 Windows 平台下的 JDK1.4,Windows 下的 JDK 安装过程非常简单,这里就不再多说,这个工具包中的内容都放在 JDK 安装目录下(下面的讲解
11、都假设我们的安装目录为 c:j2sdk1.4.0),其中的 bin 子目录中包含了所有相关的可执行文件。如图 1.2 所示:图 1.2 下面是 bin 目录中的常用命令的简要介绍(读者暂且不要关心 JDK 下的其他目录,在以后的章节中,我们会逐步涉及,到时候理解起来也要比现在容易得多)。javac.exe 是 Java 源文件的编译工具,Java 源文件的扩展名为.java,如 Test.java,Java源文件被编译后的 Java 字节码文件的扩展名为.class,如 Test.class。java.exe 是 Java 字节码解释程序,负责解释执行 Java 字节码文件,就是一个 JVM。
12、在命令行窗口下,执行 Java 命令,如果屏幕上能够打出关于这个命令的用法介绍,如图 1.3 所 4 示:图 1.3 这时你的 JDK 基本上就可以使用了。也许你会碰到两种错误:第一种错误,说 Java 不是一个可运行的程序,如图 1.4 所示:图 1.4 第二种可能碰到的错误是,当我们执行 Java 命令时,屏幕上不是打出关于这个命令的用法介绍,而是类似图 1.5 所示的错误信息:图 1.5 下面的小节我们就来分析和解决这两种错误:5 1.2.1 环境变量的介绍 太多的现代人都不会 DOS 了,根本就不明白系统环境变量和 path 环境变量的作用。通俗的说,系统环境变量就是在操作系统中定义的
13、变量,可供操作系统上的所有应用程序使用。1.2.2 如何查看系统环境变量 以 Windows2000 为例(由于 Windows2000 具有众多的新特性,这些特性在 Java 的开发过程中,能为我们提供许多方便快捷的功能,所以在这里建议读者使用 Windows2000 来做系统平台)。首先右键单击桌面上的“我的电脑”,从下拉菜单中选择“属性”,在出现的属性面板中选择“高级”标签,如图 1.6 所示:图 1.6 然后点击“环境变量”打开环境变量面板,在这里可以看到上下两个窗口,上面窗口名为“某用户的环境变量”(在这里是 Administrator 即管理员的用户变量),下面窗口名为“系统变量”
14、,如图 1.7 所示:6 图 1.7 可以在其中任意一个窗口里进行设置,区别在于上面窗口的设置用于个人环境变量,只有以该用户身份登录系统时才有效,而下面窗口中的设置则对所有用户都有效。我们也可以启动一个命令行窗口(点击“开始”菜单,在“运行”中输入 cmd,然后按下“Enter”键即可。或者点击“开始”菜单,在“程序”中选择“附件”,然后运行“命令提示符”,这两种启动方式的效果是一样的),在这个命令行窗口中执行 set 命令,如下图 1.8 所示:图 1.8 7 如上图所示,在命令行窗口中设置的 path 变量的值是图 1.7 所示的用户变量和系统变量窗口中的 path 变量的值的总和。也就是
15、说,用 set 命令看到的环境变量值是 Windows 环境变量窗口中用户环境变量和系统环境变量的值的总和。作者在教学的过程中,有时会看到另外一种情况:命令行窗口中用 set 命令看到的环境变量的值不是如先前 Windows 窗口中图 1.7 所示的用户变量和系统变量的值的总和,而是只有用户变量窗口中的值。至于为什么会有这种情况,只要不影响我们的使用,我们就不必再去管它了。实际上,真正起作用的就是我们在命令行窗口中运行 set 命令所看到的所有的变量和值,所以建议读者每次配置完成后,用 set 命令查看一下。你就能发现,用户环境变量修改之后,需要用户重新登录才会生效,相信聪明的读者应该能体会到
16、其中的道理,也知道如何解决环境变量所引起的问题了。事实上,有经验的程序员在遇到环境变量的问题时,都是通过这样的途径和手段解决问题的。我们接着就可以进行系统环境变量的配置了。1.2.3 如何设置系统环境变量 还是以 path 环境变量为例进行讲解吧,path 环境变量的作用是设置供操作系统去寻找和执行应用程序的路径,也就是说,如果操作系统在当前目录下没有找到我们想要执行的程序和命令时,操作系统就会按照 path 环境变量指定的目录依次去查找,以最先找到的为准。path 环境变量可以存放多个路径,路径和路径之间用分号(;)隔开。在其他的操作系统下可能是用其他的符号分隔,比如在 Linux 下就是用
17、冒号(:)。我们可以在 Windows 系统环境变量窗口中设置系统变量。在图 1.7 窗口中,单击名为“path”的变量(如果没有你想设置的环境变量选项,在“用户变量”或“系统变量”中选择“新建”来添加),选择“编辑”。然后如下图所示:在打开的“编辑系统变量”窗口中的“变量值”输入框中加入你想设置的环境变量值。图 1.9 对于 path,我们可以在原有值的基础上添加新的路径,因为我们想在任意路径下运行java.exe,javac.exe 等程序,所以我们应当在 path 原有值的末尾加上分号(;),然后再加上你的Java 编译器所在的路径(这里是 c:j2sdk1.4.0bin),最后点击“确
18、定”按钮,这样设置就完成了。接着,我们重新启动一个新的命令行窗口,执行 set 命令,查看我们刚才的设置结果。这种方法的优点是设置一次之后,系统会保存此设置,对以后在当前操作系统上运行的任何程序都有效,但不会影响先前已经运行起来的程序,特别是命令行窗口程序(如果想要使设置的值生效,只能关但不会影响先前已经运行起来的程序,特别是命令行窗口程序(如果想要使设置的值生效,只能关闭原来的命令行窗口,再重新启动一个新的命令行窗口程序)。闭原来的命令行窗口,再重新启动一个新的命令行窗口程序)。我们也可以直接在命令行窗口下进行设置,针对上面的情况,可以在命令行窗口中执行 set path=c:j2sdk1.
19、4.0bin;%path%;,这样在这个命令行窗口中的任意路径下都可以执行Java.exe程序了。讲到这里肯定会有读者提出疑问了,%path%究竟起什么作用呢?将某个环境变量包含在一对百分号(%)之间,就表示该环境变量的当前取值。如图 1.8 中,“C:WINNTsystem32;C:WINNT;C:WINNTSystem32Wbem;c:j2sdk1.4.0bin;”这个长长的字符串就代表了%path%。务 8 必注意,在命令行窗口下的设置只对当前这个窗口有效,并不会影响到其他命令行窗口和程序。解决了第一种错误,我们再来看看如图 1.5 所示的第二种错误。产生这种错误的原因可能是由于 在 设
20、 置 path 时,忽 视 了 path 环 境 变 量 中 的 目 录 的 设 置 顺 序,如 我 们 使 用 set path=%path%;c:j2sdk1.4.0bin 命令设置 path 环境变量,由于 c:winntsystem32 这个路径排在c:j2sdk1.4.0bin 前面,而在 c:winntsystem32 下也有一个 java.exe 程序。这样,当我们运行Java 命令时,执行的不是 c:j2sdk1.4.0binjava.exe,而是 c:winntsystem32java.exe,恰恰 c:winntsystem32java.exe 又是一个有问题的程序。在 c
21、:winntsystem32 目录下,怎么会出现一个有问题的 java.exe 呢?造成这种错误的原因有多种,譬如,我们安装完 Jbuilder8 这类java 开发工具软件时,Jbuilder8 安装程序会将自己的 java.exe 拷贝到 c:winntsystem32 目录下。java.exe 启动需要到原始安装目录中去装载许多相关文件,如果我们以后又删除或移动了JBuilder8 的安装目录,就会出现这样的问题。解决这个问题,我们只要将我们想用的 java.exe所在的目录放在 path 环境变量的前面,如:set path=c:j2sdk1.4.0bin;%path%。有时,我们的计
22、算机上安装了多个 java 开发工具,我们怎么知道在命令行窗口中执行的 java 命令属于哪个开发工具包中的呢?其实,我们只要在运行 java.exe 的时候加上 verbose 参数,格式如下:java-verbose java 虚拟机启动时,就会显示其详细的加载过程信息,如图 1.10 所示:图 1.10 从上面显示的信息中,我们就能看出所运行的 Java 命令是属于哪个开发工具包。作为初学者,你不一定马上会碰到上面的问题,但你一旦变成了 Java 老手,反而有可能会碰到这些问题,因为老手使用 Java 的频率更高了,遇到的环境更复杂了,碰到问题的概率也就大多了。尽管传染科的医生防范传染病
23、的经验很丰富,但他接触传染源的机会也越多,反而比普通医生被传染的可能性大多了。这正是“常在河边走,哪能不湿鞋”。别着急,熟能生巧、勤能补拙,编的程序多了,遇到的错误就多了,排除错误的能力也多了,你的经验也就更丰富了。现在读者基本有了一个可实验的环境,我们就可以来体验一下 Java 的编程过程了。1.3 体验 Java 编程的过程 首先用记事本程序建立一个名为 Test.java 的源文件(在实际操作中,我们常常会用到一些更好的工具软件,例如 UltraEdit、EditPlus 等,它们有很多记事本程序不能比拟的优点。比如:支持用不同的颜色标记关键字,类名;自动显示行号,以便于我们更加方便的查
24、找所需要的代码;能够自动缩进,减少了书写程序代码的工作量;能够同时编辑多个文件,方便在多个文件之间反复切换;还可以正常显示 Linux 格式的文本文件),文件内容如下:程序清单:Test.java 9 class Test public static void main(String args)System.out.println(“My first Java program”);在编译和运行这个程序之前,我们必须对这个程序的内容作简要介绍:1).java 中的程序必须以类(class)的形式存在,一个类要能被解释器直接启动运行,这个类中必须有 main 函数,java 虚拟机运行时首先调用这
25、个类中的 main 函数,main 函数的写法是固定的,必须是 public static void main(String args),等到大家学到后面的章节,就明白这个函数的各组成部分的具体意义了,由于以后的每个例子几乎都要用这个函数,读者现在先硬记下来再说。2).如果我们要让程序在屏幕上打印出一串字符信息(包括一个字符),我们可以用System.out.println(“填写你要打印的若干字符”)语句,或是 System.out.print(“填写你要打印的若干字符”)语句。前者会在打印完的内容后再多打印一个换行符(n),你的窗口光标的位置会移动到打印行的下一行的开始处。而后者只打印你的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 就业培训教程张孝祥 高清 第一章 Java开发 就业 培训 教程 张孝祥 开发
限制150内