【教学课件】第5章JavaAPI基础.ppt

上传人:牧羊曲112 文档编号:5658929 上传时间:2023-08-06 格式:PPT 页数:21 大小:377.47KB
返回 下载 相关 举报
【教学课件】第5章JavaAPI基础.ppt_第1页
第1页 / 共21页
【教学课件】第5章JavaAPI基础.ppt_第2页
第2页 / 共21页
【教学课件】第5章JavaAPI基础.ppt_第3页
第3页 / 共21页
【教学课件】第5章JavaAPI基础.ppt_第4页
第4页 / 共21页
【教学课件】第5章JavaAPI基础.ppt_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《【教学课件】第5章JavaAPI基础.ppt》由会员分享,可在线阅读,更多相关《【教学课件】第5章JavaAPI基础.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 API

2、包含在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远程调用(RMI)的类和接口,

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

4、类支持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 语言包(java.lang)简介,java.lang包中包含了Java程序

5、设计语言最基础的类。本节只讨论其中最常用的类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类派生出来的,因此,Object类中定义的成员变量和方法,在其他类中都可以使用Object类常用方法有:e

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

7、新设置系统资源的静态方法。System类的常用方法有:static Properties getProperty()获取系统属性static Properties getProperty(String key)获取由key指定的系统属性static void setProperty(Properties props)设置由props指定的系统属性static void load(String fileName)加载本地文件系统中的动态库static voidexit(int status)中断当前运行的Java虚拟机其中,获取系统属性方法的返回值类型为Properties,Properties

8、是java语言包中定义的一个类。该类定义了系统属性集合,常用的属性值如下:java.versionjava运行时环境版本 java虚拟机实现的版本java.class.path java类的路径os.version操作系统的版本user.name用户名user.dir用户路径user.home用户HOME路径,5.2.3 Class类,Class类的实例代表一个正在运行的Java应用程序的类或接口。Java的基本数据类型(boolean,byte,char,shart,int,long,float,double)以及数组和关键字void都是由Class对象来表达。Class类没有公共的构造方法

9、,Class对象由Java虚拟机自动构造。Class类的常用方法有:String static getName()返回对象的类名class static forName(String ClassName)使用ClassName指定的、与类或接口相联系的class对象class static forName(String name,boolean initialize,ClassLoader loader)使用loader指定的类装载器,5.2.4 Runtime类,每一个Java应用程序都有一个Runtime类的实例,从而允许应用程序与其运行的环境进行交互。可利用Runtime类直接访问运行时

10、环境资源。Runtime类常用方法有:static Runtime getRuntime()返回与当前应用程序相联系的运行时环境voidexit(int status)中断当前运行的Java虚拟机native void traceInstructions(Boolean on)设置对指令的追踪native void traceMethodCalls(Boolean on)设置对调用方法的追踪totalMemory()返回系统的内存总数freeMemory()返回系统当前内存的剩余空间总数gc()运行垃圾回收程序,5.2.5 Float类,语言包中提供了8个称为数据类型包装类的类,专门完成把Ja

11、va语言的8个基本数据类型包装为相应的类Java语言中的8种基本数据类型是:byte、short、int、long、float、double、char、boolean,对应的8个数据类型包装类是:Byte、Short、Integer、Long、Float、Double、Character、BooleanFloat类的几个构造方法如下:Float(double value)以double类型的参数value创建一个对象Float(float value)以float类型的参数value创建一个对象Float(String s)以String类型的参数s创建一个对象Float类的几个方法如下:in

12、t compareTo(Float anotherF)比较两个对象的大小float floatValue()返回对象的float数据类型的数值double doubleValue()返回对象的double数据类型的数值int intValue()返回对象的int数据类型的数值,5.2.6 String类,String类的构造方法和常用方法有:String()构造方法,初始化创建一个字符为空的String对象String(byte bytes)构造方法,初始化创建一个string对象,其值由指定bytes转换而来compareTo(String anotherString)比较字符串,返回两者之

13、间的差值length()获取字符串的长度substring(int beginIndex)返回当前字符串由beginIndex开始到结尾子串substring(int beginIndex,int endIndex)返回当前字符串的由beginIndex开始到endIndex结尾的子串toLowerCase()返回小写字符串toUpperCase()返回大写字符串,5.2.7 Math类,Math类包含了一组基本的数学运算的方法和常数Math类中的所有方法都定义为静态的Math类是最终类(final),所以不能从Math类中派生其他的新类。Math类的几个常用方法如下:double abs(d

14、ouble 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()的返回值乘上一个整数,可以得到任意区间的、double类型的随机数;把random()的返回值乘上一个整数再转换成int类型,可以得到任意区间的、int类型的随机数,5.3 实用包(java.util)简介,java.util包主要包含集合框架、事件模型、日期和时间机制、国际化等的类和接口。本节介绍的java.ut

15、il包的类和接口有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类中包含有数组操作的一些常用方法(如排序和查找),这可以大大简化程序设计人员的设计过程。Arrays类的常用方法有:static void sort(byte a)把byte类型的数组a中的元素按升序排序static void sort(byte a,int fromIndex,int toIndex)把byte类型的数组a中的、从fromInde

16、x到toIndex的元素按升序排序static void sort(int a)把int类型的数组a中的元素按升序排序static void sort(int a,int fromIndex,int toIndex)把int类型的数组a中的、从fromIndex到toIndex的元素按升序排序static void sort(double a)把double类型的数组a中的元素按升序排序static void sort(double a,int fromIndex,int toIndex)把double类型的数组a中的、从fromIndex到toIndex的元素按升序排序,Arrays类的常用

17、方法:,static int binarySearch(byte a,byte key)在byte类型的数组a 中、使用折半查找算法查找指定元素key是否存在,若存在返回该元素的数组下标;若不存在返回-1static int binarySearch(int a,int key)在int类型的数组a 中、使用折半查找算法查找指定元素key是否存在,若存在返回该元素的数组下标;若不存在返回-1static int binarySearch(double a,double key)在double类型的数组a 中、使用折半查找算法查找指定元素key是否存在,若存在返回该元素的数组下标;若不存在返回-

18、1说明:(1)除了上面列出的sort()方法和binarySearch()外,还有char、float、long、Object等类型的sort()方法和binarySearch()(2)在使用binarySearch()时,要求数组a中的元素已经有序排列,否则返回值未定义,5.3.2 Vector 类,Vector类称作向量类,它实现了动态的数组,使用于元素数量变化的对象数组像数组一样,Vector类也用从0开始的下标表示元素的位置;但和数组不同的是,当Vector对象创建后,数组的元素个数会随着Vector对象元素个数的增大和缩小变化。Vector类的成员变量有:elementData存放对

19、象元素的数组elementCount当前对象元素的个数capacityIncreament元素个数变大时自动增大数组空间的个数Vector类的构造方法有:Vector()创建元素为空的对象,且elementCount=10,capacityIncreament=0Vector(int initialC)创建元素为空的对象,且elementCount=initialC,capacityIncreament=0Vector(int initialC,int capacityI)创建元素为空的对象,且elementCount=initialC,capacityIncreament=capacityI

20、,vector类的常用方法:,void add(int index,Objectelem)在Vector对象的index下标处插入元素elem,index下标以后的元素依次后移boolean add(Objectelem)在Vector对象的尾部添加元素elem,添加成功返回true,失败返回falseboolean addAll(Collection c)在Vector对象的尾部、依次添加集合对象c中的所有元素,成功返回truevoid addElement(Objectobj)在Vector对象的尾部、增加对象obj,且对象的元素个数加1boolean removeElement(Obje

21、ctobj)如果对象非空,则删除Vector对象obj第一次出现的元素copyInto(ObjectanArray)把Vector对象指针所指位置的成分复制给数组anArray,要求数组anArray要足够大,否则会抛出异常Enumeration elements()返回对象的序列化元素int size()返回对象的元素个数,5.3.3 Data 类,Data 类提供了获取当前精确到毫秒时间的方法,并提供了许多方法截取当前时间的年、月、日等数值。Data 类的构造方法有:Data()创建一个可精确到毫秒的当前时间的对象Data(long date)创建一个可精确到毫秒的参数date指定时间的对

22、象,date表示从GMT(格林威治)时间1970-1-1 00:00:00开始至某时刻的毫秒数。Calendar类定义了许多如YEAR、MONTH、DAY、HOUR、MINUTE、SECOND、DAY_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程序,

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

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号