没有合适的资源?快使用搜索试试~ 我知道了~
软件设计师专题12:JAVA程序设计语言.doc
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 73 浏览量
2022-06-11
21:03:21
上传
评论
收藏 321KB DOC 举报
温馨提示
试读
46页
软件设计师专题12:JAVA程序设计语言
资源推荐
资源详情
资源评论
12 JAVA 程序设计语言
专题十二: JAVA 程序设计语言
语言简介:
背景
年 公司的 、 等人 在电
视、控制烤面包箱等家用消费类电子产品上进行交互式操作的开发,开始时是
使用 语言,但是,后来发现 在某些方面并不能很好的满足设计者的
需要,从而考虑自行设计一门新的语言,这种新的语言并不局限于扩充语言机
制本身,而是更注重语言所运行的软硬件环境。主要是可以使用其建立一个系
统,这个系统运行于一个巨大的、分布的异构网络环境中,完成各种电子设备
之间的通信与协同工作。基于这种思想而开发了一个名为 的 即一种橡树
的名字 新语言。
Java 语言简介
先是被用于家电控制中,可通过手持设备控制家电。在当时并没有引
起人们的注意 直到 ! 年下半 年 " 的迅猛发展 环球信息网 ###
的快速增长 促进了 语言研制的 进展 使得它逐渐成为 " 上受欢迎
的开发与编程语言 。用 $ 编写的 %&& 应用小程序能够嵌入到网页中运行,
而实现声音、动画等功能。同时,在一般的应用程序设计方面也不逊色,完全
可以用面向对象的技术与方法进行开发,符合最新的软件开发规范的要求。由
于 已经被注册,所以,最终更名为 $。
Java 对软件开发技术的影响
工业界不少人预言 :' 语言的出现 将会引起一场软件革命 '这是因为
传统的软件往往都是与具体的实现环境有关 换了一个环境就需要作一番改动
耗 时费力 而 语言能在执行码 二进制码 上兼容 这样以前所开发的软件
就 能运行在不同的机器上 只要所用的机器能提供 语言解释器即可。
对软件开发技术的影响重要体现在以下四个方面:
、软件的需求分析 (可将用户的需求进行动态的、可视化描述 以提供设计
者更加直观的要求。用户的各色各样的需求都可以用 语言描述清楚。
)、软件的开发方法 (由于 语言的面向目标的特性 所以完全可以用 *
的技术与方法来开发 。
+、 语言的动画效果。利用 ### 提供的巨大 动画资源空间 可以共享
全世界的动态画面的资源。
!、软件最终产品 (用 语言开发的软件可以具有可视化、可听化、可操
作化的效交互、动画与动作 '要它停就停 要它继续就继续 而这是在电影
与电视播放过程中难以做到的。
是一个广泛使用的网络编程语言 它是一种新的计算概念。首先 作为一种
程序设计语言 它简单、面向对象、不依赖于机器的结构、具有可移植性、安
全性、并且提供了并发的机制、具有很高的性能。其 次 它最大限度地利用了
网络 的小应用程序 && 可在网络上传输而 不受 , 和环境的限制。
另外 还提供了丰富的类库 使程序设计者可以很 方便地建立自己的系统。
的特点:
简单性
- 1 -
12 JAVA 程序设计语言
语言衍生自 是一种面向对象的语言 它通过提供最基本的方法来
完成指定的 任务 只需理解一些基本的概念 就可以用它编写出适合于各种情况
的应用程 序。 略去了运算符重载、多重继承等模糊的概念 并且通过实现
自动垃圾收集大大简化了程序设计者的内存管理工作。另外 也适合于在
小型机上运行 它的基本解释器及类的支持只有 !-. 左右 加上标准类库和线
程的支持也只有 )/. 左右。库和线程的支持也只有 )/. 左右。
面向对象性:
语言的设计集中于对象及其接口 它提供了简单的类机制以及动态的 接
口模型。对象中封装了它的状态变量以及相应的方法 实现了模块化和信息隐
藏 0而类则提供了一类对象的原型 并且通过继承机制 子类可以使用父类 所提
供的方法 实现了代码的复用。
体系结构中立:
解释器生成与体系结构无关的字节码指令 只要安装了 运行时系
统 程序就可在任意的处理器上运行使得 程序可以方便地被移植到
网络上的不同机器。同时 的类库中也实现了与不同平台的接口 使这些类
库可以移植。这样大大降低了开发、维护和管理的工作。
安全性 :
用于网络、分布环境下的 必须要防止病毒的入侵。 不支持指针
一切对内存的访问都必须通过对象的实例变量来实现 这样就防止程序员使用
'特洛伊 '木马等欺骗手段访问对象的私有成员 同时也避免了指针操作中容易
产生的错误
支持网络编程:
语言的特性使它可以最大限度地利用网络。 %&& 是 的小应 用
程序 它是动态、安全、跨平台的网络应用程序。 %&& 嵌入 123 语
言 通过主页发 布到 "。 网络用户 访问服务器的 %&& 时 这些
%&&从网络上进行传输 然后在支持 的浏览器中运行。由于 语言
的安全机 制 用户一旦载入 %&&就可以放心地来生成多媒体的用户界面或
完成复杂的计算而不必担心病毒的入侵。
分布性:
是面向网络的语言。通过它提供的类库可以处理 2,4", 协议 用户 可
以通过 53 地址在网络上很方便地访问其它对象 。
丰富的类库:
语言包提供的支持包括字符串处理、多线程处理、例外处理、数学函
数处理等 。
实用程序包提供的支持包括哈希表、堆栈、可变数组、时间和日期等。
输入输出包用统一的 “流 ”模型来实现所有格式的 "4包括文件系统、
网络、输入
低级网络包用于实现 编程。
抽象图形用户接口包实现了不同平台的计算机的图形用户接口部件
网络包支持 " 的 2,4", 协议 提供了接口。
面向对象程序设计——对象、类与实体
6对象”译自英文的“7$8,现实世界实际上是由 7$ 组成的,我们看到的
一切都是 7$。程序设计语言为解决现实世界的问题而存在,因此,我们自
然会想到,让程序设计按照我们平常看世界的方式运作,这样才最自然,这就
是面向对象的程序设计的出发点。
- 2 -
12 JAVA 程序设计语言
面向对象程序设计,确切的说,对象是现实世界的某个具体的物理实体在计算
机逻辑中的映射和体现。比如:每个人都是一个具体存在的实体,有高度、体
重等很多属性,也有走路、工作等很多行为。这样的实体在程序设计中可以表
达为计算机可以理解和操作的对象。
类:每个对象都是属于某种类别的。也就是说类是同种对象的集合与抽象。
属于类的某个对象被称为是类的一个实例。
对象的状态与行为:对象的状态也称为静态属性。用计算机术语来说也就是
变量。每个对象都有自己专有的变量。比如,具体的一个人,有身高、体重等。
对象的行为也称为动态属性,在计算机内部用方法来表示。比如,人有走路、
工作的行为。
对象的关系:
包含:当对象 % 是对象 的属性的时候,称对象 包含对象 %。比如电脑与主
板
继承:当对象 % 是对象 的特例的时候,称对象 % 继承了对象 。比如,鲤鱼
是鱼的一种特例。
关联:对象 % 的引用是对象 的属性,% 和 之间是关联关系。
和 、 之间的比较:
对于变量声明、参数传递、操作符、流控制等 使用了和 、 相同
的传统 使得熟悉 、 的程序员能很方便地进行编程。同时 为 实现
其简单、安全等特性 也摒弃了 和 中许多不合理的内容。
全局变量: 程序中 不能在所有类之外定义全局变量 只能通过在一个类
中定 义公用、静态的变量来实现一个全局变量。例如 (
79:
&;77<0=
在类 79 中定义变量 7< 为 &;7使得其它类 可以
访问和修改该变量。 对全局变量进行了更好的封装。而在 和 中
依赖于不加封装 的全局变量常常造成系统的崩溃。
语句: 不支持 、 中的 语句 而是通过例外处理语句
>? 等来代替 、 中用 来处理遇到错误时跳转的情况
使程序更可读 且更结构化。
指针:指针是 、 中最灵活 也是最容易产生错误的数据类型。由指针所
进行的内存地址操作常会造成不可预知的错误 ,从而破坏安全性 造成系统的
崩溃。而 对指针进行完全的控制 程序员不能直接进行任何指针操作。同
时 数组作为类在 中实现 良好地解决了数组访问越界这一 、 中不
作检查的错误。
内存管理:在 中 程序员通过库函数 和 @ 来分配和释放内存
中则通过运算符 A 和 B 来分配和释放内存。再次释放已释放的
内存块或未被分配的内存块 会造成系统的崩溃 0同样 忘记释放不再使用的内
存块也会逐渐耗尽系统资源。而在 中 所有的数据结构都是对象 通过运
算符 A为它们分配内存堆。通过 A 得到对象的处理权 对此自动地
进行管理并且进行垃圾收集 有效防止了由于程序员的误操作而导致的错误 并
且更好地利用了系统资源。
数据类型的支持:在 、 中 对于不同的平台 编译器对于简单数据类型
如 C等分别分配不同长度的字节数 例如( 在 ", 中为 D 位
在 9%E* 中为 +) 位 这导致了代码的不可移植性 但在 中 对于这些数
- 3 -
12 JAVA 程序设计语言
据类型总是分 配固定长度的位数 如对 型 它总占 +) 位 这就保证了
的平台无关性。
类型转换:在 、 中 可以通过指针进行任意的类型转换,而 中 运
行时系统对对象的处理要进行类型相容性检查 以防止不安全的 转换。
头文件:、 中用头文件来声明类的原型以及全局变量、库函数等 在大
的系 统中 维护这些头文件是很困难的。而 不支持头文件 类成员的类型
和访 问权限都封装在一个类中 运行时系统对访问进行控制 防止对私有成员的
操作。同时 中用 & 语句来与其它类进行通讯 以便使用它们的方法。
结构和联合:、 中的结构和联合中所有成员均为公有 这就带来了安全
性问题。 中不包含结构和联合 所有的内容都封装在类中。
预处理:、 中用宏定义来实现的代码给程序的可读性带来了困难。在
中 不支持宏 它通过关键字 ? 来声明一个常量 以实现宏定义中广泛
使 用的常量定义。
简 单 的 程 序:
%&&与 %&& 程序
$ 程序可以分为两类:$&&和 $&&。前者是完整
的应用程序,需要独立的解释器来解释运行;后者则是嵌在网页中的非独立程
序,由浏览器所自带的 $ 解释器来解释运行。
简 单 的 %&& 程序:
&;71#B%&&
:44&&
&;7BFG
:
H;H&'1#BI' 0
=
=
简 单 的 %&& 程序:
&$HAHJ0
&$H&&HJ0
&;71#B%&&KB%&&
:44&&
&;7B&&>
:
HBA'1#BI')-)- 0
=
=
由 于 %&& 中 没 有 方 法 作 为 解 释 器 的入 口 我 们 必 须
编 写 123 文 件 把 该 %&& 嵌入 其 中 然 后 用 &&A 来 运 行
或 在 支 持 的 浏 览 器 上 运 行 。 123 文 件 如 下 (
L123M
L1N%OM
L2"23NM
%%&&
L42"23NM
L41N%OM
LOPM
- 4 -
12 JAVA 程序设计语言
L&& BQ'1#B%&&H' AB>Q)--
>>Q!-ML4&&M
L4OPM
L4123M
其 中 用 <&&>标 记来 启 动 1#B%&&,B 指明字节码所
在的文件 AB> 和 >> 指明 && 所占 的 大 小。
从 上 述 例 子 中 可 以看 出 程 序 是由 类构 成 的 对 于 一 个应 用 程
序 来 说 必须 有 一 个 类 中 定 义 方法 而 对 && 来 说 它 必 须
作 为 %&& 的 一 个 子 类 。 在 类 的 定义 中 应 包 含 类 变 量 的 声 明 和
类 中 方 法 的 实 现 。 在基本数据类型、运算符、 表 达 式 、控 制 语
句 等 方 面 与 、 基 本上 是 相 同 的。
语言是对软件开发技术有深远影响、应用前景广泛、具有丰富的类库、继
承了 传统(摈弃了某些不足)广泛使用的网络编程语言。 语言的特
性使它可以最大限度地利用网络。
本章介绍面向对象的基本概念:对象和类,对象的属性。
第 1 章 Java 和面向对象概述
语言对软件开发技术的影响
语言的应用前景及特点
语言特点
%&&
丰富的类库
.语言对软件开发技术的影响
程序设计语言分四个发展阶段:
第一代语言3 (二进制机器代码
第二代语言 )3 (汇编语言 3A33;333
第三代语言 +3 (高级语言 133
第四代语言!3 (面向对象语言(--,)
特殊应用程序
非过程化
第五代语言:R
).语言的应用前景
所有面向对象的应用开发,包括面向对象的事件描述、处理、综合等。
计算过程的可视化、可操作化的软件的开发。
动态画面的设计,包括图形图像的调用。
交互操作的设计(选择交互、定向交互、控制流程等)。
"的系统管理功能模块的设计,包括 #7页面的动态设计、管理和交
互操作设计等。
"(企业内部网)上的软件开发(直接面向企业内部用户的软件)。
与各类数据库连接查询的 S3语句实现。
其他应用类型的程序。
+.语言的特点
简单
面向对象
分布性
鲁棒性
- 5 -
剩余45页未读,继续阅读
资源评论
oligaga
- 粉丝: 52
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功