Java语言程序设计教程常用工具包和类课件.pptx
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《Java语言程序设计教程常用工具包和类课件.pptx》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 语言程序设计 教程 常用 工具包 课件
- 资源描述:
-
1、Return11.1 Java11.1 Java常用工具包常用工具包 在Java中,系统提供了大量的包以满足面向对象、网络化、编程的需要。本节将对一些常用的工具包作简要介绍。 11.1.1 Java API 包11.1.2 java.lang 11.1.1 Java API 包 在Java 1.0被发布时,它包括一系列的8个包,被称作核心应用编程接口(API)。其中许多包在前面的章节中我们已介绍过,而且编程时经常用到。现在,每当发布一个Java新版本时,都会增加一些核心API,当然还有其他一些有用的工具包。在J2SE 1.2版本中,60个包总共提供了1781个公共类和接口;在J2SE 1.3版
2、本中,70多个包提供的公共类和接口超过2100个;在J2SE 1.4版本中,120多个包提供了总数超过2600个的公共类和接口。 以下是一些经常用到的工具包:以下是一些经常用到的工具包: l 语言包(java.lang)提供的支持包括字符串处理、多线程处理、例外处理、数学函数处理等,可以用它简单地实现Java程序的运行平台; l 输入输出包(java.io)使用统一的“流”模型来实现所有格式的IO,包括文件系统、网络传输、输入/出设备等; l 实用程序包(java.util)提供的支持包括哈希表、堆栈以及时间和日期等; l 抽象窗口工具集包(java.awt)实现了不同平台上的计算机图形用户接
3、口部件,包括窗口、菜单、滚动条、对话框等,使得Java可以移植到不同的运行环境; l 网络包()支持Internet的TCPIP协议,提供了与Internet的接口。它支持URL连接,WWW的即时访问,并且简化了C/S(客户/服务器)模型的程序设计。 另外比较常见的Java包还有:java.math、java.sql、java.text、java.rmi、java.beans以及java.security等。教材P268页中的表11-1,列出了所有被Java 2定义的Java核心API包并对它们作了简要描述。Return11.1.2 java.lang 其实,我们前面章节编写的每个Java程序
4、都与java.lang有关。但之所以没说明,是因为java.lang被自动导入所有的程序。它所包含的类和接口对所有Java程序都是必要的,是Java中最广泛使用的包。 教材P269页给出了java.lang中主要包括的类。 另外,还有两个由Character定义的类:Character.Subset和Character.UnicodeBlock,它们是在Java 2中新增加的。 java.lang中也定义了如下的接口: l Cloneable接口 l Comparable接口 l Runnable接口 其中,Comparable接口是在Java 2中新增加的。 java.lang中的几个类包含
5、了过时的方法,其中的大多数可以追溯到Java 1.0。在Java2中仍然提供了这些方法,用于支持逐渐减少的老程序,而这些方法在新程序中不被推荐使用。大多数过时的方法出现在Java 2之前,因此我们不准备讨论这些方法。ReturnReturn11.2 简单类型包装器简单类型包装器11.2.1 Number 11.2.2 DoubleFloat 11.2.3 Byte、Short、Integer和和 Long11.2.4 Character 11.2.5 Boolean类类11.2.6 关于关于Vector11.2.7 Void和和Process 在教材2.3节中我们提到过,Java使用简单的类型
6、,如整型(int)、字符(char)等数据类型不是对象层次结构的组成部分,它们通过值传递给方法而不能直接通过引用传递。而且也没有办法使两种方法对整型(int)引用同一实例(same instance)。但是,有时需要对这些简单的类型建立对象表达式,如处理对象的枚举类,要将简单类型存储到这些类中的一个,需要在类中包装简单类型。为了满足这种需要,Java提供了与每一个简单类型相对应的类。从本质上讲,这些类在类中包装简单类型,因此通常被称作类型包装器(wrappers)。Return11.2.1 Number 抽象类Number定义了一个由包装数字类型字节型(Byte)、短整型(Short)、整型(
7、Int)、长整型(Long)、浮点型(Float)和双精度型(Double)的类实现的超类。Number有返回上面不同数字格式的对象值的抽象方法。也就是,doubleValue()方法返回双精度(Double)值,floatValue()方法返回浮点(Float)值等。这些方法如下:byte byteValue()double doubleValue()float floatValue()int intValue()long longValue()short shortValue()Number有6个具体的子类包含了6种数字类型的显式值:双精度型(Double)、浮点型(Float)、字节型(
8、Byte)、短整型(Short)、整型(Integer)和长整型(Long)。11.2.2 DoubleFloat 双精度(Double)和浮点(Float)分别是对类型double和类型float的浮点值的包装器。浮点(Float)构造函数如下所示: Float(double num) Float(float num) Float(Stringstr)throw NumberFormatException 如上可见,浮点(Float)对象可以由类型float或类型double的值创建。它们也能由浮点数的字符串表达式创建。 双精度(Double)的构造函数如下。 Double(double n
9、um) Double(String str) throw NumberFormatException 双精度(Double)对象可以被双精度(Double)值或包含了浮点值的字符串创建。浮点(Float)和双精度(Double)都定义了一些常数,这些常数见教材P270页。 由浮点(Float)定义的方法见教材P271页表11-2。由双精度(Double)定义的方法见教材P271页表11-3。Return11.2.3 Byte11.2.3 Byte、ShortShort、IntegerInteger和和 LongLong Byte、Short、Integer和Long类分别是字节型(byte)、
10、短整型(short)、整型(int)和长整型(long)整数类型的包装器。它们的构造函数分别如下: Byte(byte num) Byte(String str) throw NumberFormatException Short(short num) Short(String str) throw NumberFormatException Integer(int num) Integer(String str) throw NumberFormatException Long(long num) Long(String str) throw NumberFormatException 正如
11、上所示,这些对象可由数值或含有有效整数值的字符串创建。 下面讨论如何进行数字和字符串的转换问题。在程序设计中,一个最常见的问题是将一个数字的字符串表达式转换成内部的二进制格式。Java为此提供了一个方便的方法去完成这项任务。Byte、Short、Integer和Long类分别提供了parseByte()、parseShort()、parseInt()和parseLong()方法。这些方法返回与调用它们的数值字符串相应的字节(byte)、短整型(short)、整型(int)和长整型(long)值。在Float和Double类中也有相似的方法。教材P274页的程序说明了parseInt()方法的使
12、用。Return11.2.4 Character 字符(Character)是围绕字符型(char)的一个简单的包装器。字符(Character)的构造函数如下: Character(char ch) 这里,ch指定了被创建的字符(Character)对象所包装的字符。 调用如下的charValue()方法可以获得包含在字符(Character)对象中的字符型(char)值。 char charValue() 调用的结果返回字符。字符(Character)类定义的常数见教材P275页。 字符(Character)包括了几个静态方法,这些方法将字符分类并改变其大小写。这些方法见教材P275276
13、页表11-4。关于这些方法的使用见教材P276页的示例。Return11.2.5 Boolean11.2.5 Boolean类类 Boolean是一个围绕布尔(boolean)值的非常细小的包装器,主要用在通过引用传递布尔(boolean)变量的场合。它包含了常数TRUE和FALSE,这些常数定义了布尔(Boolean)对象的真与假。Boolean也定义了TYPE域,它是boolean的Class对象。在Boolean中定义了如下的构造函数: Boolean(boolean boolValue) Boolean(String boolString) 在第一种形式中,boolValue要么是tr
14、ue,要么是false。在第二种形式中,如果在boolString中包含了字符串“true”(无论是大写形式还是小写形式),则新的布尔(Boolean)对象将为真,否则为假。Boolean定义了教材P277页表11-5中所列出的方法。Return11.2.6 关于关于Vector 向量(Vector)是由java.util包提供的,它允许提供不同类型元素共存的变长数组。Vector类的特点如下。 l 需要处理的对象数目不定,序列中的元素都是对象,或者可以表示成对象。 l 需要将不同类的对象组合成一个数据序列。 l 需要做频繁的对象序列中元素的插入和删除。 l 经常需要定位序列中的对象或其他查找
15、操作。 l 在不同的类之间传递大量的数据。其局限性是对象不能是简单类型,但这可以通过数组(Array)实现。(1)创建向量类的对象:)创建向量类的对象: public Vector(int initCapacity, int capacityIncrement);其中,initCapacity表示刚创建时Vector序列包含的元素数目,capacityIncrement表示如果向Vector序列中加元素,一次性加多少个。(2)向向量序列中加元素:)向向量序列中加元素: addElement(Object obj) insertElement(Object obj, int index)(3)修
16、改和删除向量序列中元素:)修改和删除向量序列中元素: setElementAt(Object obj, int index) removeElement(Object obj) removeElementAt(int index) removeAllElements()(4)查找向量序列中元素:)查找向量序列中元素: elementAt(int index) contains(Object obj) lastIndexOf(Object obj, int start_index)ReturnReturn11.2.7 Void和和Process Void类有一个TYPE域,该域保存对类型void
17、的Class对象的引用。这样做将不创建类的实例。 抽象类Process封装了一个进程(process),也就是一个正在执行的程序。它主要被当作由Runtime类中的exec()方法所创建的对象的类型的超类。Runtime类将在后面介绍。在抽象类Process中,包含了教材P278页表11-6中所列出的抽象方法。Return11.3 Object类类11.3.1 Object 11.3.2 使用clone()和Cloneable接口 这里大致介绍一下Object类。在Java中,定义有一种特殊的类Object,其他所有的类都是Object的子类。也就是说,Object是所有其他类的超类。这意味着
展开阅读全文