收藏 分享(赏)

Java语言概述31152new.doc

上传人:dzzj200808 文档编号:2533057 上传时间:2018-09-21 格式:DOC 页数:11 大小:1.32MB
下载 相关 举报
Java语言概述31152new.doc_第1页
第1页 / 共11页
Java语言概述31152new.doc_第2页
第2页 / 共11页
Java语言概述31152new.doc_第3页
第3页 / 共11页
Java语言概述31152new.doc_第4页
第4页 / 共11页
Java语言概述31152new.doc_第5页
第5页 / 共11页
点击查看更多>>
资源描述

1、第 1章Java 语言概述本章主要介绍 Java 语言的产生和发展过程,Java 语言的特点和优越性,Java 应用程序和 Applet 小应用程序,Java 工具包 JDK,Java 程序的编辑、编译和运行,以及 Java 开发工具介绍和使用等内容。通过本章的学习,可对 Java 语言有比较全面的了解和认识。1.1 Java 语言的产生Java 语 言 来 源 于 Sun Microsystems 公 司 的 Green 项 目 , 该 项 目 最 初 的目 的 是 为 家 用 消 费 电 子 产 品 开 发 一 个 分 布 式 代 码 系 统 , 以 便 用 户 将 E-mail发 送 给

2、 电 冰 箱 、 电 视 机 、 烤 箱 等 家 用 电 器 , 对 它 们 进 行 控 制 , 并 和 它 们 进行 信 息 交 换 。 在 项 目 研 制 初 始 阶 段 , 项 目 组 成 员 准 备 采 用 C+语 言 开 发 该系 统 , 但 是 C+遇 到 了 前 所 未 有 的 挑 战 , 因 为 它 太 复 杂 而 且 安 全 性 差 。 所以 最 后 项 目 组 成 员 基 于 C+开 发 了 一 种 新 的 语 言 Oak( 橡 树 ) , 这 就 是 Java语 言 的 前 身 。Oak 是一种用于网络的精巧而又安全的语言,Sun 公司曾依此投标了一个交互式电视节目,但结

3、果是被 SGI 打败。正当 Oak 无家可归之时,Mark Ardreesen 开发的 Mosaic 和 Netscape 启发了 Oak 项目组成员,他们用 Java 编制了 HotJava 浏览器,并得到了 Sun 公司首席执行官 Scott McNealy 的支持,开启了 Java 进军 Internet 的契机。1994 年,Internet 的迅猛发展, WWW 的快速增长,促进了 Java 语言研制的进展,使得它逐渐成为 Internet 上受欢迎的开发与编程语言。1995年 5 月 Sun 公司正式发布 Java 的第一个办公版本。Java 作为新一代的面向对象的程序设计语言,其

4、平台无关性直接威胁到 Wintel 的垄断地位。一些著名的计算机公司纷纷购买了 Java 语言的使用权,如 IBM、Netscape 、Novell、Apple、DEC、SGI 、 Oracle 等,甚至包括最不情愿的 Microsoft,都购买了 Java 的使用权。Java 语言被美国的著名杂志 PC Magazine 评为 1995 年十大优秀科技产品(计算机类就此一项入选) 。微软公司总裁 Bill Gates 不无感慨地说:Java 程序 设计2“Java 是长时间以来最卓越的程序设计语言” 。Sun 公司的总裁 Scott McNealy 认为,Java 为 Internet 和

5、WWW 开辟了一个崭新的时代。万维网(WWW)的创始人 Berners-Lee 说:“计算机事业发展的下一个浪潮就是 Java,并且将很快会发生” 。甚至有人预言:Java 将是网络上的“世界语” ,今后所有的用其他语言编写的软件统统都要用 Java语言来 改写。注:Java 是印度尼西亚的一个重要的盛产咖啡的岛屿,中文名叫爪哇,开发人员为这种新的语言起名为 Java,其寓意是为世人端上一杯热咖啡。1.2 Java 语言的特点及优势Java 是一个广泛使用的网络编程语言,是一种新的计算概念。首先,作为一种程序设计语言,它简单、面向对象、不依赖于机器的结构、具有可移植性、健壮性、安全性,并且提供

6、了并发的机制,具有很高的性能。其次,它最大限度地利用了网络,Java 的 Applet 小应用程序可在网络上传输而不受 CPU 和环境的限制。另外,Java 还提供了丰富的类库,使程序设计者可以很方便地建立自己的系统。1简单性Java 语言是一种面向对象的语言,它通过提供最基本的方法来完成指定的任务,只需理解一些基本的概念,就可以用它编写出适合于各种情况的应用程序。Java 略去了运算符重载、多重继承等模糊的概念,并且通过实现自动无用信息回收,大大简化了程序设计者的内存管理工作。另外,Java 也适合于在小型机上运行,它的基本解释器及类的支持只有 40KB 左右,加上标准类库和线程的支持也只有

7、 215KB 左右。2面向对象Java 语言的设计集中于对象及其接口,它提供了简单的类机制以及动态的接口模型。对象中封装了它的状态变量以及相应的方法,实现了模块化和信息隐藏;而类则提供了一类对象的原型,并且通过继承机制,子类可以使用父类所提供的方法,实现了代码的复用。3分布性Java 是面向网络的语言。通过它提供的类库可以处理 TCP/IP 协议,用户可以通过URL 地址在网络上很方便地访问其他对象。4健壮性Java 在编译和运行程序时,都要对可能出现的问题进行检查,以消除错误的产生。它提供自动无用信息收集来进行内存管理,防止程序员在管理内存时容易产生的错误。通过集成的面向对象的异常(Exce

8、ption)处理机制,在编译时,Java 揭示出可能出现但未被处理的异常,帮助程序员正确地进行选择,以防止系统的崩溃。另外,Java 在编译时还可捕获类型声明中的许多常见错误,防止动态运行时不匹J 第 1 章 Java 语言概述 3配问题的出现。5安全性用于网络、分布环境下的 Java 必须要防止病毒的入侵。Java 不支持指针,一切对内存的访问都必须通过对象的实例变量来实现,这样就防止程序员使用特洛伊木马等欺骗手段访问对象的私有成员,同时也避免了指针操作中容易产生的错误。6体系结构中立Java 解释器生成与体系结构无关的字节码指令,只要安装了 Java 运行系统,Java程序就可在任意的处理

9、器上运行。这些字节码指令对应于 Java 虚拟机中的表示,Java解释器得到字节码后,对它进行转换,使之能够在不同的平台运行。7可移植性与平台无关的特性使 Java 程序可以方便地被移植到网络上的不同机器。同时,Java 的类库中也实现了与不同平台的接口,使这些类库可以移植。另外,Java 编译器是由 Java 语言实现的,Java 运行时系统由标准 C 实现,这使得Java 系统本身也具有可移植性。8解释执行Java 解释器直接对 Java 字节码进行解释执行。字节码本身携带了许多编译时信息,使得连接过程更加简单。9高性能和其他解释执行的语言如 BASIC、TCL 不同,Java 字节码的设

10、计使之能很容易地直接转换成对应于特定 CPU 的机器码,从而得到较高的性能。10多线程多线程机制使应用程序能够并行执行,而且同步机制保证了对共享数据的正确操作。通过使用多线程,程序设计者可以分别用不同的线程完成特定的行为,而不需要采用全局的事件循环机制,这样就很容易地实现网络上的实时交互行为。11动态性Java 的设计使它适合于一个不断发展的环境。在类库中可以自由地加入新的方法和实例变量而不会影响用户程序的执行。并且 Java 通过接口来支持多重继承,使之比严格的类继承具有更灵活的方式和扩展性。总之,Java 是一种编程语言、一种开发环境、一种应用环境、一种部署环境、一种广泛使用的网络编程语言

11、,它是一种全新的计算概念。1.3 Application 和 Applet 程序在 Java 2 平台下,Sun 公司重新定义了 Java 技术的架构,将其分为 3 个版本,它们是适用于小型设备和智能卡的 Java 2 平台 Micro 版(Java 2 platform micro edition, J2ME) 、适用于桌面系统的 Java 2 平台标准版( Java 2 platform standard edition, J2SE)和适用于以企业为环境而开发应用程序的专门开发人员的 Java 2 平台企业版(Java 2 platform enterprise edition,J2EE)

12、 。J2SE(Java 2 标准版本)主要提供两种程序的开发,即应用程序(Application)和Java 程序 设计4小应用程序(Applet) ,两者都必须在 Java 虚拟机(Java virtual machine,JVM)上运行。下面分别予以介绍。1.3.1 Application 程序应用程序是一种可以在控制台方式下运行的程序,与其他高级语言编写的桌面应用程序非常类似,当然也很容易实现窗口应用。【例 1-1】 简单的 Application 程序。public class HelloApppublic static void main(String args )System.ou

13、t.println(“Welcome to Java World!“);本程序的作用是输出下面一行信息:Welcome to Java World!一个 Java 应用程序由若干个类构成。在例 1-1 中有一个类,类名为 HelloApp,是我们自己定义的。class 是关键字,用来定义类。public 也是关键字,说明 HelloApp 是一个 public 类,其他的类都能访问。第一个花括号和最后一个花括号以及它们之间的内容叫做类体。public static void main (String args )是类体中的一个方法,之后的两个花括号以及之间的内容叫做方法体。一个 Java 应用

14、程序必须有一个类且只能有一个类含有 main()方法,这个类称为应用程序的主类。public、static 和 void 分别是对 main()方法的说明。在一个 Java 应用程序中 main()方法必须说明为 public static void。换言之,main()方法是 Java 应用程序的标志。String args 声明一个字符串类型的数组 args (注意 String 的第一个字母是大写的),它是 main()方法的参数。main()方法是程序开始执行的位置,即 Java 解释器的入口。Java 应用程序的源文件主名与主类名相同(包括大小写) ,扩展名为.java (大小写均可

15、) 。因此在例 1-1 中的源文件必须保存为 HelloApp.java。另外,源文件命名时,如果源文件中有多个类,那么只能有一个类是 public 类,同时该 public 类就必须为主类(含有 main()方法) ,因此源文件的主名必须与该类名相同。如果源文件没有 public 类,那么源文件的主名只要和某个类的名字相同即可,当然扩展名为.java。1.3.2 Applet 小应用程序小应用程序是一种作为对象嵌入到网页中的程序,在支持 Java 虚拟机的 Web 浏览器中运行。再来看下面一个例子。【例 1-2】 Java 小应用程序。J 第 1 章 Java 语言概述 5import ja

16、va.applet.*;import java.awt.*;public class HelloApplet extends Appletpublic void paint (Graphics g)g.setColor(Color.red);g.drawString(“Welcome to Java World!“, 40, 50);这是一个简单的 Applet 小应用程序。一个 Applet 小应用程序也是由若干个类组成的,小应用程序的类不再需要 main()方法,但必须有一个类扩展了 Applet 类,即它是Applet 类的子类,如例 1-2 中的 HelloApplet 类。一般把这个

17、类叫做该小应用程序的主类,小应用程序的主类必须是 public 的。Applet 类是系统提供的类。import java.applet.*语句的作用就是引入 java.applet 包中的所有类。Color 和 Graphics 类是 java.awt 包中的类。顾名思义,paint()方法的作用是绘画、显示,参数 Graphics g 定义画笔对象。g.setColor(Color.red)是将画笔的颜色设置为红色,g.drawString(“Welcome to Java World!“, 40, 50)是在程序中画字符串,数字 40 和 50 规定了字符串输出的起始位置(单位是像素)

18、。Applet 小应用程序的源文件的命名方法和应用程序的命名方法相同,必须把它保存到文件 HelloApplet.java 中。由于 Applet 中没有 main()方法作为 Java 解释器入口,必须编写 HTML 文件,把该Applet 嵌入其中,然后用 appletviewer 来运行或在支持 Java 的浏览器上运行。它的HTML 文件如下:小程序 其中,用标记来启动 HelloApplet,code 指明字节码所在的文件,width 和height 指明 applet 所占的大小。把这个 HTML 文件存为 HelloApplet.HTML,然后运行:C:appletviewer

19、HelloApplet.html这时屏幕弹出一个窗口,其中显示 Welcome to Java World!,显示结果如图 1-1 所示。Java 程序 设计6图 1-1 程序运行结果从上述例子中可以看出,Java 程序是由类构成的,对于一个应用程序来说,必须有一个类中定义 main()方法,而对 Applet 小应用程序来说,它必须作为 Applet 的一个子类。在类的定义中,应包含类变量的声明和类中方法的实现。1.3.3 Java 程序的基本构成一个复杂的程序可由一个或多个 Java 源程序文件构成,每个文件可以有多个类定义。下面的程序是一个较为完整的 Java Applet 小应用程序。

20、【例 1-3】 一个较为完整的 Java Applet 小应用程序。package chapter1import java.applet.Applet;import java.awt.*;public class HelloPkg extends Applet public void paint (Graphics g) g.setColor(Color.red);g.drawString(“Using package!“, 40, 50);(1)Java 程序首先是 package 语句。package 语句作为 Java 源文件的第一条语句,指明该源文件定义的类所在的包。包由用户指定,它实

21、际上是一个文件夹,其中包含用户自己编写的类。package 语句的一般格式为:package ;如果源程序中省略了 package 语句,源文件中定义命名的类被默认为是无名包的一部分,即源文件中定义命名的类在同一个包中,但该包没有名字。(2)紧接着是一个或多个 import 语句。为了能使用 Java 提供的类,必须使用 import 语句引入人们所需要的类。Java 提供了大约 60 个包,Java API 的类被组织成 8 个包: java.applet 包含所有实现 Java applet 的类。 java.awt 包含 AWT 中的图形、文本、窗口 GUI 类。J 第 1 章 Java

22、 语言概述 7 java.awt.image 包含 AWT 中的图像处理类。 java.lang 包含所有的基本语言类。 java.io 包含所有的输入输出类。 包含所有实现网络功能的类。 java.until 包含有用的数据类型类。 java.awt.peer 包含无关的 GUI 工具集界面。如果要从一个包中引入多个类,则可以用星号来代替,如import awt.*;表示引入包 java.awt 中所有的类,而import java.applet.Applet;只是引入包 java.applet 中的 Applet 类。(3)接下来是一个或多个类。类的构成将在第 4 章中介绍。1.4 程序

23、的编辑、编译和运行Java 虚拟机( Java virtual machine,JVM)是用软件模拟的计算机。它定义了指令集、寄存器集、类文件结构栈、垃圾收集堆、内存区域等,提供了跨平台能力的基础框架。Java 应用程序从源文件( *.java)经过编译生成字节码文件( *.class) ,再由解释器运行。Java Applet 小应用程序将字节码文件作为对象嵌入到超文本文件( *.html)中,在浏览器中运行。Java 程序开发的一般过程如图 1-2 所示。图 1-2 Java 程序的开发过程Java 程序 设计8字节码文件也称类文件,它是 Java 虚拟机中可执行的文件的格式,是与平台无关

24、的二进制码,执行时由解释器解释成本地机器码,解释一句,执行一句。Java 编译器针对不同平台的硬件提供了不同的编译代码规范,使得 Java 软件能够独立于平台。1.4.1 Java 工具包 JDKSun 公司的 Java 不仅提供了一个丰富的语言和运行环境,而且还提供了一个免费的 Java 开发工具集 JDK(Java development kit) 。开发人员和最终用户可以利用这个工具集来开发 Java 程序。本书的所有程序均在 Sun 公司的 JDK1.4.2 下调试通过。读者可在 Sun 公司的 Web站点免费下载。该站点的 URL 为 http:/java.S j2sdk-1_4_2

25、_04-windows-i586-p.exe,直接运行执行安装。JDK 帮助文档(jdk documentation)在 JDK 的下载页面也有下载链接,建议同时下载 Documentation,它是重要的编程手册,涵盖了整个 Java 所有方面的内容的描述。JDK 安装完后要进行环境配置。1对于 Windows 9x 操作系统在 autoexec.bat 文件中添加如下内容:set path=%path%; C:j2sdk1.4.2_04binset classpath=.; C:j2sdk1.4.2_04lib; %classpath%其中,C:j2sdk1.4.2_04 为程序安装路径,

26、如果安装时对该路径做了修改,那么这里也必须作出相应的修改。2对于 Windows NT/2000 操作系统右击桌面“我的电脑”图标,在弹出的快捷菜单中选择“属性” ,这时出现“系统特性”对话框,如图 1-3 所示。单击“高级”选项卡,单击“环境变量”按钮,出现“环境变量”对话框,如图 1-4 所示。J 第 1 章 Java 语言概述 9图 1-3 系统特性对话框 图 1-4 环境变量对话框在“用户变量”列表框中找到 path 变量,单击“编辑”按钮,将;C:j2sdk1.4.2_04bin 加到“变量值”文本框最后。若无 path 变量,则单击“新建”按钮,设置变量名为 path,变量值为 C

27、:j2sdk1.4.2_04bin 即可。同样,在“用户变量”列表框中找到 classpath 变量,单击“编辑”按钮, 将 ; C:j2sdk1.4.2_04lib 加 到 “变 量 值 ”文 本 框 的 最 后 , 若 无 classpath 变 量 , 则 单 击“新 建 ”按 钮 , 设 置 变 量 名 为 classpath, “变 量 值 ”为 C:j2sdk1.4.2_04lib 即 可 , 图 1-5 即 为 新 建 环 境 变 量 图 示 。图 1-5 新建环境变量j2sdk 工具库包括以下 7 种主要程序: javac Java 编译器,将 Java 源代码转换成字节码。

28、java Java 解释器,直接从类文件执行 Java 应用程序字节代码。 appletviewer 小应用程序浏览器,一种执行 HTML 文件上的 Java 小应用程序的 Java 浏览器。 javadoc 根据 Java 源码及说明语句生成 HTML 文档。 jdb Java 调试器,可以逐行执行程序,设置断点和检查变量。 javah 产生可以调用 Java 过程的 C 过程,或建立能被 Java 程序调用的 C 过程的头文件。Java 程序 设计10 javap Java 反汇编器,显示编译类文件中的可访问功能和数据,同时显示字节代码含义。1.4.2 Application 的编辑、编译

29、和运行1编辑在记事本中编写源文件 HelloApp.java,将文件保存在 E:chapter1下,如图 1-6 所示。图 1-6 编辑源程序 HelloApp.java2编译启动 MS DOS 方式,进入文件夹 E:chapter1,输入编译命令:E:chapter1javac HelloApp.java若无任何提示信息出现,表示编译成功,否则给出编译错误信息。3运行输入命令:E:chapter1java HelloApp运行结果如图 1-7 所示。图 1-7 编译和运行J 第 1 章 Java 语言概述 111.4.3 Applet 的编辑、编译和运行1编辑在 记 事 本 中 编 写 源 文 件 HelloApplet.java, 将 文 件 保 存 在 E:chapter1下 , 如 图 1-8 所 示 。图 1-8 编辑源程序 HelloApplet.java在记事本中编写网页文件 Hello.html,将文件保存在 E:chapter1下,如图 1-9 所示。图 1-9 编辑网页文件 Hello.html2编译在 MS DOS 方式的命令行中输入编译命令:E:chapter1javac HelloApplet.java3运行(1)在 MS DOS 方式下用小应用程序浏览器运行

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 大学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报