《JavaAPI基础》PPT课件.ppt

上传人:w****2 文档编号:15598796 上传时间:2020-08-23 格式:PPT 页数:21 大小:329.84KB
收藏 版权申诉 举报 下载
《JavaAPI基础》PPT课件.ppt_第1页
第1页 / 共21页
《JavaAPI基础》PPT课件.ppt_第2页
第2页 / 共21页
《JavaAPI基础》PPT课件.ppt_第3页
第3页 / 共21页
资源描述:

《《JavaAPI基础》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《JavaAPI基础》PPT课件.ppt(21页珍藏版)》请在装配图网上搜索。

1、第5章 Java API 基础,5.1 Java API 综述 5.2 语言包(java.lang)简介 5.3 实用包(java.util)简介 5.4 综合应用举例,5.1 Java API 综述,Java语言的内核非常小,仅包含第2章讨论的Java语言的基本数据类型和语句。Java语言的强大功能主要体现在Java语言完备丰富、功能强大的Java API上。 Java API(Java Application Programming Interface,Java应用程序接口),是Java语言提供的组织成包结构的许多类和接口的集合。Java API为用户编写应用程序提供了极大的便利。Java

2、 API包含在JDK中,因此用户只要按照1.3节介绍的方法安装了JDK运行环境就可以使用了。,Java API按照内容分别组织和存放在不同的包中,java.accessibility接口组件和助手技术的类和接口 java.appletApplet所需的类和接口 java.awt图形用户界面所需的类和接口 java.beansJava bean所需的类和接口 java.io系统输入/输出所需的类和接口 java.langJava语言编程的基础类和接口 java.math支持任意精度整数和任意精度小数的类和接口 java.naming访问命名服务的类和接口 网络应用的类和接口 java.rmi远程

3、调用(RMI)的类和接口,Java API按照内容分别组织和存放在不同的包中,java.security用于安全框架的类和接口 java.sql访问和处理数据源中数据的类和接口 java.text 支持按与语言无关方式处理文本、数据、数字和消息的类和接口 java.util集合框架、事件模型、日期和时间机制、国际化等的类和接口 javax.rmi支持RMI-IIOP的类和接口 javax.serverlet支持serverlet编程的类和接口 javax.sound支持音频设备数字接口(MIDI)的类和接口 javax.swing扩充和增强基本图形用户界面功能的类和接口 javax.trans

4、action包含有几个关于事务上下文异常的类 org.omg.CORBA支持OMG CORBA API到Java语言映射的类和接口,本章和本书讨论的Java API内容安排,Java API包含的内容很多,本章主要讨论其中两个最基本的包中的主要类: (1)语言包(java.lang)。主要讨论的类有:Object类、Class类、Runtime类、Float类、String类和Math类。 (2)实用包(java.util)。主要讨论的类和接口有:Arrays类、Vector 类、Data 类和Enumeration接口。 其他本书涉及的Java API内容,将在本书的后续各章中介绍。,5.2

5、 语言包(java.lang)简介,java.lang包中包含了Java程序设计语言最基础的类。本节只讨论其中最常用的类 java.lang包是Java语言编程使用最频繁的包。为了简化编程,系统固定地默认导入了java.lang包,所以使用java.lang包中的类时可以不用import语句导入 5.2.1 Object类 5.2.2 System类 5.2.3 Class类 5.2.4 Runtime类 5.2.5 Float类 5.2.6 String类 5.2.7 Math类,5.2.1 Object类,Object类是Java中所有类的根,所有其他的类都是由Object类派生出来的,因

6、此,Object类中定义的成员变量和方法,在其他类中都可以使用 Object类常用方法有: equals(Object obj)比较两个对象是否相等 getClass()获取对象的运行时类 toString()把对象转换为字符串 Object类中还有一组关于线程同步的方法:wait()方法和notify()方法,我们将在10.7.2节讨论同步线程的设计方法时介绍 equals(Object obj)方法与Java运算符“=”的含义相同, 但用法不同。当两个值比较、对象或变量与值比较、两个变量比较时,使用运算符“=”;当比较两个对象时,使用equals()方法。该方法调用返回true时表示两个对

7、象相等(或称相同),返回false时表示两个对象不相等,5.2.2 System类,System类提供了许多获取或重新设置系统资源的静态方法。 System类的常用方法有: static Properties getProperty()获取系统属性 static Properties getProperty(String key)获取由key指定的系统属性 static void setProperty(Properties props) 设置由props指定的系统属性 static void load(String fileName)加载本地文件系统中的动态库 static voidexit

8、(int status)中断当前运行的Java虚拟机 其中,获取系统属性方法的返回值类型为Properties,Properties是java语言包中定义的一个类。该类定义了系统属性集合,常用的属性值如下: java.versionjava运行时环境版本 java.vm.version java虚拟机实现的版本 java.class.path java类的路径 os.version操作系统的版本 user.name用户名 user.dir用户路径 user.home用户HOME路径,5.2.3 Class类,Class类的实例代表一个正在运行的Java应用程序的类或接口。Java的基本数据类型

9、(boolean,byte,char,shart,int,long,float,double)以及数组和关键字void都是由Class对象来表达。 Class类没有公共的构造方法,Class对象由Java虚拟机自动构造。 Class类的常用方法有: String static getName()返回对象的类名 class static forName(String ClassName) 使用ClassName指定的、与类或接口相联系的class对象 class static forName(String name,boolean initialize,ClassLoader loader) 使

10、用loader指定的类装载器,5.2.4 Runtime类,每一个Java应用程序都有一个Runtime类的实例,从而允许应用程序与其运行的环境进行交互。可利用Runtime类直接访问运行时环境资源。 Runtime类常用方法有: static Runtime getRuntime() 返回与当前应用程序相联系的运行时环境 voidexit(int status)中断当前运行的Java虚拟机 native void traceInstructions(Boolean on)设置对指令的追踪 native void traceMethodCalls(Boolean on)设置对调用方法的追踪 t

11、otalMemory()返回系统的内存总数 freeMemory()返回系统当前内存的剩余空间总数 gc ()运行垃圾回收程序,5.2.5 Float类,语言包中提供了8个称为数据类型包装类的类,专门完成把Java语言的8个基本数据类型包装为相应的类 Java语言中的8种基本数据类型是:byte、short、int、long、float、double、char、boolean,对应的8个数据类型包装类是:Byte、Short、Integer、Long、Float、Double、Character、Boolean Float类的几个构造方法如下: Float (double value)以dou

12、ble类型的参数value创建一个对象 Float (float value)以float类型的参数value创建一个对象 Float (String s)以String类型的参数s创建一个对象 Float类的几个方法如下: int compareTo(Float anotherF)比较两个对象的大小 float floatValue()返回对象的float数据类型的数值 double doubleValue()返回对象的double数据类型的数值 int intValue()返回对象的int数据类型的数值,5.2.6 String类,String类的构造方法和常用方法有: String()构

13、造方法,初始化创建一个字符为空的String对象 String(byte bytes)构造方法,初始化创建一个string对象,其值由指定bytes转换而来 compareTo(String anotherString) 比较字符串,返回两者之间的差值 length()获取字符串的长度 substring(int beginIndex) 返回当前字符串由beginIndex开始到结尾子串 substring(int beginIndex,int endIndex) 返回当前字符串的由beginIndex开始到endIndex结尾的子串 toLowerCase()返回小写字符串 toUpperC

14、ase()返回大写字符串,5.2.7 Math类,Math类包含了一组基本的数学运算的方法和常数 Math类中的所有方法都定义为静态的 Math类是最终类(final),所以不能从Math类中派生其他的新类。 Math类的几个常用方法如下: double abs(double a)求a的绝对值 float abs(float a)求a的绝对值 int abs(int a)求a的绝对值 long abs(long a)求a的绝对值 double random()返回一个(0.0,1.0)区间的随机数 random()方法是非常有用的方法。把random()的返回值乘上一个整数,可以得到任意区间的

15、、double类型的随机数;把random()的返回值乘上一个整数再转换成int类型,可以得到任意区间的、int类型的随机数,5.3 实用包(java.util)简介,java.util包主要包含集合框架、事件模型、日期和时间机制、国际化等的类和接口。本节介绍的java.util包的类和接口有Arrays类、Vector类、Data 类和Enumeration接口 5.3.1 Arrays类 5.3.2 Vector 类 5.3.3 Data 类 5.3.4 Enumeration接口,5.3.1 Arrays类,Arrays类中包含有数组操作的一些常用方法(如排序和查找),这可以大大简化程序

16、设计人员的设计过程。 Arrays类的常用方法有: static void sort(byte a)把byte类型的数组a中的元素按升序排序 static void sort(byte a,int fromIndex,int toIndex) 把byte类型的数组a中的、从fromIndex到toIndex的元素按升序排序 static void sort(int a) 把int类型的数组a中的元素按升序排序 static void sort(int a,int fromIndex,int toIndex) 把int类型的数组a中的、从fromIndex到toIndex的元素按升序排序 sta

17、tic void sort(double a) 把double类型的数组a中的元素按升序排序 static void sort(double a,int fromIndex,int toIndex) 把double类型的数组a中的、从fromIndex到toIndex的元素按升序排序,Arrays类的常用方法:,static int binarySearch(byte a,byte key) 在byte类型的数组a 中、使用折半查找算法查找指定元素key是否存在,若存在返回该元素的数组下标;若不存在返回-1 static int binarySearch(int a,int key) 在int

18、类型的数组a 中、使用折半查找算法查找指定元素key是否存在,若存在返回该元素的数组下标;若不存在返回-1 static int binarySearch(double a,double key) 在double类型的数组a 中、使用折半查找算法查找指定元素key是否存在,若存在返回该元素的数组下标;若不存在返回-1 说明: (1)除了上面列出的sort()方法和binarySearch()外,还有char、float、long、Object等类型的sort()方法和binarySearch() (2)在使用binarySearch()时,要求数组a中的元素已经有序排列,否则返回值未定义,5.

19、3.2 Vector 类,Vector类称作向量类,它实现了动态的数组,使用于元素数量变化的对象数组 像数组一样,Vector类也用从0开始的下标表示元素的位置;但和数组不同的是,当Vector对象创建后,数组的元素个数会随着Vector对象元素个数的增大和缩小变化。 Vector类的成员变量有: elementData存放对象元素的数组 elementCount当前对象元素的个数 capacityIncreament元素个数变大时自动增大数组空间的个数 Vector类的构造方法有: Vector () 创建元素为空的对象,且elementCount=10,capacityIncreament

20、=0 Vector (int initialC) 创建元素为空的对象,且elementCount= initialC,capacityIncreament=0 Vector (int initialC,int capacityI) 创建元素为空的对象,且elementCount= initialC,capacityIncreament= capacityI,vector类的常用方法:,void add( int index,Objectelem) 在Vector对象的index下标处插入元素elem,index下标以后的元素依次后移 boolean add(Objectelem) 在Vecto

21、r对象的尾部添加元素elem,添加成功返回true,失败返回false boolean addAll(Collection c) 在Vector对象的尾部、依次添加集合对象c中的所有元素,成功返回true void addElement(Objectobj) 在Vector对象的尾部、增加对象obj,且对象的元素个数加1 boolean removeElement(Objectobj) 如果对象非空,则删除Vector对象obj第一次出现的元素 copyInto(ObjectanArray) 把Vector对象指针所指位置的成分复制给数组anArray,要求数组anArray要足够大,否则会抛

22、出异常 Enumeration elements() 返回对象的序列化元素 int size()返回对象的元素个数,5.3.3 Data 类,Data 类提供了获取当前精确到毫秒时间的方法,并提供了许多方法截取当前时间的年、月、日等数值。 Data 类的构造方法有: Data ()创建一个可精确到毫秒的当前时间的对象 Data (long date) 创建一个可精确到毫秒的参数date指定时间的对象,date表示从GMT(格林威治)时间1970-1-1 00:00:00开始至某时刻的毫秒数。 Calendar类定义了许多如YEAR、MONTH、DAY、HOUR、MINUTE、SECOND、DA

23、Y_OF_WEE等成员变量,Calendar类的get()方法可以获取这些成员变量的数值,5.3.4 Enumeration接口,Enumeration接口主要用于集合类对象的序列化。一个集合类对象中包含有许多元素,所谓对象是序列化的,就是说可以依次取出该对象中的元素。 Enumeration接口定义如下: public interface Enumeration Object nextElement();/返回后续元素 boolean hasMoreElements();/是否还有后续元素 nextElement()方法返回后续元素; hasMoreElements()方法判断是否还有后续元素 任何一个类,只要实现了Enumeration接口,其对象就是序列化的 所谓对象是序列化的,就是说若连续调用nextElement()方法,每次将返回该集合对象当前元素的后续元素,5.4 综合应用举例,【例5.1】 问题和例2.14相同,即用随机数函数产生10个随机数,并把这10个数按从小到大的次序排序。 要求:用 Arrays类的sort()方法实现排序 程序设计见例5.1程序,

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!