大学JAVA程序设计chapter01剖析

上传人:我** 文档编号:117858241 上传时间:2019-12-11 格式:PPT 页数:27 大小:884.50KB
返回 下载 相关 举报
大学JAVA程序设计chapter01剖析_第1页
第1页 / 共27页
大学JAVA程序设计chapter01剖析_第2页
第2页 / 共27页
大学JAVA程序设计chapter01剖析_第3页
第3页 / 共27页
大学JAVA程序设计chapter01剖析_第4页
第4页 / 共27页
大学JAVA程序设计chapter01剖析_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《大学JAVA程序设计chapter01剖析》由会员分享,可在线阅读,更多相关《大学JAVA程序设计chapter01剖析(27页珍藏版)》请在金锄头文库上搜索。

1、*Java讲义张翔1 第一章第一章 JavaJava概述概述 *Java讲义张翔2 1.1Java语言的发展历史 1991年,美国Sun Microsystems公司的某个研究小 组为了能够在消费电子产品上开发应用程序设计和开发出 一种语言,称之为Oak . 目的是为家用消费电 子产品开发 一个分布式代码系统, 可以把E-mail发给电冰箱、 电视机 等家用电器, 对它们进行控制 “有心栽花花不成,无心插柳柳成荫”。Sun公司绝没想到 本想用于消费电子产品开发的编程语言却率先在网络中得 到了广泛应用.1995年,互联网在世界上蓬勃发展,Sun 公司发现Oak语言所具有的跨平台、面向对象、安全性

2、高 等特点非常符合互联网的需要(多操作系统),于是改进了 该语言的设计,最终,Sun公司给该语言取名为Java语言 ,造就了一代成功的编程语言。 *Java讲义张翔3 大家想一想,在PC下用windows编编写的程序能 够够不做修改就直接拿到UNIX系统统上运行吗吗?显显 然是不可以的,因为为程序的执执行最终终必须转换须转换 成为计为计 算机硬件的机器指令来执执行,专门为专门为 某 种计计算机硬件和操作系统编统编 写的程序是不能够够直 接放到另外的计计算机硬件上执执行的,至少要做移 植工作。要想让让程序能够够在不同的计计算机上能够够 运行,就要求程序设计语设计语 言是能够够跨越各种软软件 和硬

3、件平台的,而java满满足了这这一需求。 *Java讲义张翔4 Java的主要应用领域: Java+XML的电子商务解决方案. 分布式计算:jini 消费类电子产品:KVM.personal java,embbeded java. 交互式电视:Java TV 实时JAVA: real time java Peertopeer java: JXTA J2ee与J2me的广泛应用. *Java讲义张翔5 K Virtual Machine(KVM)主要是Sun所提出Java在不同能 力平台下的一个解决方案,由于KVM最小只要160K bytes 的记忆体就可以执行,因此称为 K Virtual M

4、achine,其 中K是表示kilo byte的意思,其中包含了128K用来执行 Virtual Machine及本身所必须具备的基本Libraries。 Embedded Java 与Personal Java(也有人简称为PJava) 这两项规格。其中Embedded Java 是为了资源十分有限 ,而且没有显示设备的嵌入式装置而设计; Personal Java 则是为了在能够与网际网路连线、并拥有显示系统(例 如彩色LCD)的消费性电子装置而设计。 *Java讲义张翔6 Java发明人James Gospling *Java讲义张翔7 1. 2 Java语言的特点 简单易学: 1)风格

5、类似于C+, 基本语法与C语言类似; 2)摒弃了C+中容易引发程序错误的地方: 不再有全局变量 不再有#include 和#define 等预处理功能 不再有structure、union及typedef等 不再有函数、不再有指针、不再有多重继承 不再有goto语句 不再有操作符重载(Operatior Overloading) 取消自动类型转换,要求强制转换 自动进行内存管理 3)提供了丰富的类库。 *Java讲义张翔8 面向对象:支持静态和动态风格的代码继承及重用,是完 全 面向对象的, 它不支持类似C语言那样的面向过程 的程 序设计技术。 解释执行:Java解释器(运行系统)能直接运行目

6、标代码 指令。 平台无关:Java源程序被编译成一种高层次的与机器无 关的 byte-code格式语言, 被设计在Java虚拟机上运 行。 性能优异:Java可以在运行时直接将目标代码翻译成机 器指令, Sun用直接解释器一秒钟内可调用300,000个 过程, 翻译目标代码的速度与C/C+的性能没什么区 别。 分布式:Java包括一个支持HTTP和FTP等基于 TCP/IP协议的子库。因此, Java应用程序可凭借URL 打开并访问网络上的对象, 其访问方式与访问本地文件系 统几乎完全相同。 *Java讲义张翔9 可移植:Java应用程序可以在配备了Java解释器和运行环 境的任何计算机 系统

7、上运行, 通过定义独立于平台的基本数 据类型及其运算, Java数据得以在任何硬件平台上保持一致 。 多线程:Java提供的多线程功能使得在一个程序里可同时执 行多个小任务。 多线程带来的好处是可以有更好的 交互性 能和实时控制性能。 健壮:Java致力于检查程序在编译和运行时的错误。 类型检查帮助检查出许多开发早期出现的错误。 Java自已操纵内存减少了内存出错的可能性。 Java还实现了真数组, 避免了覆盖数据的可能。 安全:Java的安全性可从两个方面得到保证。一方面, 在 Java语言里, 象指针和释放内存等C+功能被删除, 避免 了非法内存操作。 另一方面, 当Java用来创建浏览器

8、时, 语 言功能和一些浏览器本身提供的功能结合起来, 使它更安全 。 动态:Java的动态特性是其面向对象设计方法的拓展, 它 允许程序动态地装入运行过程中所需要的类。 *Java讲义张翔10 1.3 Java的运行机制 1 java虚拟机 java虚拟机是软件模拟的计算机,可以在任何处理器上 (无论是在计算机中还是在其它电子设备中)安全并且兼 容的执行保存在.class文件中的字节码。 java虚拟机的“机器码”保存在.class文件中,有时也可 以称之为字节码文件。java程序的跨平台主要是指字节 码文件可以在任何具有java虚拟机的计算机或者电子设 备上运行,java虚拟机中的java解

9、释器负责将字节码文 件解释成为特定的机器码进行运行。java源程序需要通 过编译器编译成为.class文件(字节码文件),java程 序的编译和执行过程如图所示。 *Java讲义张翔11 *Java讲义张翔12 java虚拟机的建立需要针对不同的软硬件平台做专门的实现,既 要考虑处理器的型号,也要考虑操作系统的种类。如下图所示, 目前在SPARC结构、X86结构、MIPS和PPC等嵌入式处理芯 片上、在UNIX、Linux、windows和部分实时操作系统上都 有java虚拟机的实现。 *Java讲义张翔13 1.4 Java运行平台 1.J2EE Java2 Enterprise Editi

10、on企业计算 是标准版的企业级扩充 2.J2SE Java2 Standard Edition 桌面计算 Java的标准与核心平台,面向个人用户 3.J2ME Java2 Micro Edition 嵌入计算 面向嵌入式系统应用 *Java讲义张翔14 *Java讲义张翔15 1.4.2 java应用程序接口(JavaAPI) Java.lang:包含形成语言核心的类, Java.lang.ref:提供对无用内存回收功能支持的类 Java.lang.reflect:提供程序加载时候的动态类型检测功 能 Java.awt:用来构建和管理程序的图形用户界面 Java.applet:提供执行Appl

11、et程序特殊行为的类 J:提供与网络应用相关的类和接口 Java.io: 提供处理输入输出文件的类 Java.util:提供为应用任务设置的实用程序类和集合 框架集 *Java讲义张翔16 1)java.lang 本类包中包含了各种定义java语言时必须的类,这些类能 够以其他类不能使用的方式访问java的内部。任何java程序 都将自动引入这个包。其中的类包括: Object类:java中最原始、最重要的类,每个java类都 是它的子类,它实现了每个类都必须具有的基本方法。 基本类型包装器:Boolean, Character, Number, Double, Float, Integer,

12、 Long。 String类:字符串类。 Math类:数学函数的集合。 执行线程:类Thread, ThreadGroup, 接口Runable。 异常和错误:类Exception, Error, 接口Throwable。 *Java讲义张翔17 (1)java.lang 运行环境:可以通过类Runtime和System访问外部系 统环境。System类的两个常用功能就是访问标准输入/ 输出流和错误流、退出程序。 其他类:接口Cloneable、运行时的类等。 (2)java.applet Java Applet是Java编程的一个主要魅力,java.applet 类包提供了Applet的运行

13、机制以及一些编写Applet非常有用 的方法。 *Java讲义张翔18 (3) java.awt 本类包是各种窗口环境的统一界面(AWT代表Abstract Windows Toolkit,即抽象窗口工具包),其中的类使得创 建诸如窗口、菜单、滚动条、文本区、按钮以及复选框等图 形用户界面(GUI)的元素变得非常容易。 (4) java.awt.image 类包能够以独立于设备的方式加载并过滤位图图象。 (5) java.awt.peer java.awt.peer是全部awt组件的对等对象接口的集合, 每个接口都提供了机器相关基本的方法,awt使用这些方法 来实现GUI,而不必关心是何种机器

14、或操作系统。 *Java讲义张翔19 (6) java.io Java的输入/输出模式是完全建立在流的基础之上的。流 是一种字节从一个地方到另一个地方的单向流动,可以把流 附加于文件、管道和通信链路等。 java.io类包中定义的许 多种流类通过继承的方式进行组织,其中也包括一些用来访 问本地文件系统上的文件的流类。 (7) 类包用来完成与网络相关的功能:URL、 WWW连接以及更为通用的Socket网络通信。 (8) java.util java.util类包包含了一些实用类和有用的数据结构,如 字典(Dictionary)、散列表(Hashtable)、堆栈(Stack)、向 量(Vect

15、ro)以及枚举类(Enumeration)等。 *Java讲义张翔20 (6) java.io Java的输入/输出模式是完全建立在流的基础之上的。流 是一种字节从一个地方到另一个地方的单向流动,可以把流 附加于文件、管道和通信链路等。 java.io类包中定义的许 多种流类通过继承的方式进行组织,其中也包括一些用来访 问本地文件系统上的文件的流类。 (7) 类包用来完成与网络相关的功能:URL、 WWW连接以及更为通用的Socket网络通信。 (8) java.util java.util类包包含了一些实用类和有用的数据结构,如 字典(Dictionary)、散列表(Hashtable)、堆

16、栈(Stack)、向 量(Vectro)以及枚举类(Enumeration)等。 *Java讲义张翔21 J2sdk的安装与组成 安装 组成 *Java讲义张翔22 安装JDK后产生如下目录结构: bin目录:Java开发工具,包括Java编译器、解释器等 demo目录:一些实例程序 lib目录:Java开发类库 jre目录: Java运行环境,包括Java虚拟机、运行类库 等 由于JDK的安装程序中并不包含帮助文档,因此也必须从 Sun的网站上下载进行安装。通常安装在JDK所在目录的 docs子目录下面。用浏览器打开docs子目录下的 index.html文件就可以阅读所有的帮助文档。 *Java讲义张翔23 *Java讲义张翔24 Java开发工具包括: Javac:Java编译器,用来将java程序编译成 Bytecode。 Java:Java解释器,执行已经转换成Bytecode的

展开阅读全文
相关资源
相关搜索

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

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号