《JavaAPI基础》PPT课件.ppt

上传人:za****8 文档编号:13190627 上传时间:2020-06-07 格式:PPT 页数:21 大小:241.96KB
返回 下载 相关 举报
《JavaAPI基础》PPT课件.ppt_第1页
第1页 / 共21页
《JavaAPI基础》PPT课件.ppt_第2页
第2页 / 共21页
《JavaAPI基础》PPT课件.ppt_第3页
第3页 / 共21页
点击查看更多>>
资源描述
第5章JavaAPI基础,5.1JavaAPI综述5.2语言包(java.lang)简介5.3实用包(java.util)简介5.4综合应用举例,5.1JavaAPI综述,Java语言的内核非常小,仅包含第2章讨论的Java语言的基本数据类型和语句。Java语言的强大功能主要体现在Java语言完备丰富、功能强大的JavaAPI上。JavaAPI(JavaApplicationProgrammingInterface,Java应用程序接口),是Java语言提供的组织成包结构的许多类和接口的集合。JavaAPI为用户编写应用程序提供了极大的便利。JavaAPI包含在JDK中,因此用户只要按照1.3节介绍的方法安装了JDK运行环境就可以使用了。,JavaAPI按照内容分别组织和存放在不同的包中,java.accessibility接口组件和助手技术的类和接口java.appletApplet所需的类和接口java.awt图形用户界面所需的类和接口java.beansJavabean所需的类和接口java.io系统输入/输出所需的类和接口java.langJava语言编程的基础类和接口java.math支持任意精度整数和任意精度小数的类和接口java.naming访问命名服务的类和接口网络应用的类和接口java.rmi远程调用(RMI)的类和接口,JavaAPI按照内容分别组织和存放在不同的包中,java.security用于安全框架的类和接口java.sql访问和处理数据源中数据的类和接口java.text支持按与语言无关方式处理文本、数据、数字和消息的类和接口java.util集合框架、事件模型、日期和时间机制、国际化等的类和接口javax.rmi支持RMI-IIOP的类和接口javax.serverlet支持serverlet编程的类和接口javax.sound支持音频设备数字接口(MIDI)的类和接口javax.swing扩充和增强基本图形用户界面功能的类和接口javax.transaction包含有几个关于事务上下文异常的类org.omg.CORBA支持OMGCORBAAPI到Java语言映射的类和接口,本章和本书讨论的JavaAPI内容安排,JavaAPI包含的内容很多,本章主要讨论其中两个最基本的包中的主要类:(1)语言包(java.lang)。主要讨论的类有:Object类、Class类、Runtime类、Float类、String类和Math类。(2)实用包(java.util)。主要讨论的类和接口有:Arrays类、Vector类、Data类和Enumeration接口。其他本书涉及的JavaAPI内容,将在本书的后续各章中介绍。,5.2语言包(java.lang)简介,java.lang包中包含了Java程序设计语言最基础的类。本节只讨论其中最常用的类java.lang包是Java语言编程使用最频繁的包。为了简化编程,系统固定地默认导入了java.lang包,所以使用java.lang包中的类时可以不用import语句导入5.2.1Object类5.2.2System类5.2.3Class类5.2.4Runtime类5.2.5Float类5.2.6String类5.2.7Math类,5.2.1Object类,Object类是Java中所有类的根,所有其他的类都是由Object类派生出来的,因此,Object类中定义的成员变量和方法,在其他类中都可以使用Object类常用方法有:equals(Objectobj)比较两个对象是否相等getClass()获取对象的运行时类toString()把对象转换为字符串Object类中还有一组关于线程同步的方法:wait()方法和notify()方法,我们将在10.7.2节讨论同步线程的设计方法时介绍equals(Objectobj)方法与Java运算符“=”的含义相同,但用法不同。当两个值比较、对象或变量与值比较、两个变量比较时,使用运算符“=”;当比较两个对象时,使用equals()方法。该方法调用返回true时表示两个对象相等(或称相同),返回false时表示两个对象不相等,5.2.2System类,System类提供了许多获取或重新设置系统资源的静态方法。System类的常用方法有:staticPropertiesgetProperty()获取系统属性staticPropertiesgetProperty(Stringkey)获取由key指定的系统属性staticvoidsetProperty(Propertiesprops)设置由props指定的系统属性staticvoidload(StringfileName)加载本地文件系统中的动态库staticvoidexit(intstatus)中断当前运行的Java虚拟机其中,获取系统属性方法的返回值类型为Properties,Properties是java语言包中定义的一个类。该类定义了系统属性集合,常用的属性值如下:java.versionjava运行时环境版本java.vm.versionjava虚拟机实现的版本java.class.pathjava类的路径os.version操作系统的版本user.name用户名user.dir用户路径user.home用户HOME路径,5.2.3Class类,Class类的实例代表一个正在运行的Java应用程序的类或接口。Java的基本数据类型(boolean,byte,char,shart,int,long,float,double)以及数组和关键字void都是由Class对象来表达。Class类没有公共的构造方法,Class对象由Java虚拟机自动构造。Class类的常用方法有:StringstaticgetName()返回对象的类名classstaticforName(StringClassName)使用ClassName指定的、与类或接口相联系的class对象classstaticforName(Stringname,booleaninitialize,ClassLoaderloader)使用loader指定的类装载器,5.2.4Runtime类,每一个Java应用程序都有一个Runtime类的实例,从而允许应用程序与其运行的环境进行交互。可利用Runtime类直接访问运行时环境资源。Runtime类常用方法有:staticRuntimegetRuntime()返回与当前应用程序相联系的运行时环境voidexit(intstatus)中断当前运行的Java虚拟机nativevoidtraceInstructions(Booleanon)设置对指令的追踪nativevoidtraceMethodCalls(Booleanon)设置对调用方法的追踪totalMemory()返回系统的内存总数freeMemory()返回系统当前内存的剩余空间总数gc()运行垃圾回收程序,5.2.5Float类,语言包中提供了8个称为数据类型包装类的类,专门完成把Java语言的8个基本数据类型包装为相应的类Java语言中的8种基本数据类型是:byte、short、int、long、float、double、char、boolean,对应的8个数据类型包装类是:Byte、Short、Integer、Long、Float、Double、Character、BooleanFloat类的几个构造方法如下:Float(doublevalue)以double类型的参数value创建一个对象Float(floatvalue)以float类型的参数value创建一个对象Float(Strings)以String类型的参数s创建一个对象Float类的几个方法如下:intcompareTo(FloatanotherF)比较两个对象的大小floatfloatValue()返回对象的float数据类型的数值doubledoubleValue()返回对象的double数据类型的数值intintValue()返回对象的int数据类型的数值,5.2.6String类,String类的构造方法和常用方法有:String()构造方法,初始化创建一个字符为空的String对象String(bytebytes)构造方法,初始化创建一个string对象,其值由指定bytes转换而来compareTo(StringanotherString)比较字符串,返回两者之间的差值length()获取字符串的长度substring(intbeginIndex)返回当前字符串由beginIndex开始到结尾子串substring(intbeginIndex,intendIndex)返回当前字符串的由beginIndex开始到endIndex结尾的子串toLowerCase()返回小写字符串toUpperCase()返回大写字符串,5.2.7Math类,Math类包含了一组基本的数学运算的方法和常数Math类中的所有方法都定义为静态的Math类是最终类(final),所以不能从Math类中派生其他的新类。Math类的几个常用方法如下:doubleabs(doublea)求a的绝对值floatabs(floata)求a的绝对值intabs(inta)求a的绝对值longabs(longa)求a的绝对值doublerandom()返回一个(0.0,1.0)区间的随机数random()方法是非常有用的方法。把random()的返回值乘上一个整数,可以得到任意区间的、double类型的随机数;把random()的返回值乘上一个整数再转换成int类型,可以得到任意区间的、int类型的随机数,5.3实用包(java.util)简介,java.util包主要包含集合框架、事件模型、日期和时间机制、国际化等的类和接口。本节介绍的java.util包的类和接口有Arrays类、Vector类、Data类和Enumeration接口5.3.1Arrays类5.3.2Vector类5.3.3Data类5.3.4Enumeration接口,5.3.1Arrays类,Arrays类中包含有数组操作的一些常用方法(如排序和查找),这可以大大简化程序设计人员的设计过程。Arrays类的常用方法有:staticvoidsort(bytea)把byte类型的数组a中的元素按升序排序staticvoidsort(bytea,intfromIndex,inttoIndex)把byte类型的数组a中的、从fromIndex到toIndex的元素按升序排序staticvoidsort(inta)把int类型的数组a中的元素按升序排序staticvoidsort(inta,intfromIndex,inttoIndex)把int类型的数组a中的、从fromIndex到toIndex的元素按升序排序staticvoidsort(doublea)把double类型的数组a中的元素按升序排序staticvoidsort(doublea,intfromIndex,inttoIndex)把double类型的数组a中的、从fromIndex到toIndex的元素按升序排序,Arrays类的常用方法:,staticintbinarySearch(bytea,bytekey)在byte类型的数组a中、使用折半查找算法查找指定元素key是否存在,若存在返回该元素的数组下标;若不存在返回-1staticintbinarySearch(inta,intkey)在int类型的数组a中、使用折半查找算法查找指定元素key是否存在,若存在返回该元素的数组下标;若不存在返回-1staticintbinarySearch(doublea,doublekey)在double类型的数组a中、使用折半查找算法查找指定元素key是否存在,若存在返回该元素的数组下标;若不存在返回-1说明:(1)除了上面列出的sort()方法和binarySearch()外,还有char、float、long、Object等类型的sort()方法和binarySearch()(2)在使用binarySearch()时,要求数组a中的元素已经有序排列,否则返回值未定义,5.3.2Vector类,Vector类称作向量类,它实现了动态的数组,使用于元素数量变化的对象数组像数组一样,Vector类也用从0开始的下标表示元素的位置;但和数组不同的是,当Vector对象创建后,数组的元素个数会随着Vector对象元素个数的增大和缩小变化。Vector类的成员变量有:elementData存放对象元素的数组elementCount当前对象元素的个数capacityIncreament元素个数变大时自动增大数组空间的个数Vector类的构造方法有:Vector()创建元素为空的对象,且elementCount=10,capacityIncreament=0Vector(intinitialC)创建元素为空的对象,且elementCount=initialC,capacityIncreament=0Vector(intinitialC,intcapacityI)创建元素为空的对象,且elementCount=initialC,capacityIncreament=capacityI,vector类的常用方法:,voidadd(intindex,Objectelem)在Vector对象的index下标处插入元素elem,index下标以后的元素依次后移booleanadd(Objectelem)在Vector对象的尾部添加元素elem,添加成功返回true,失败返回falsebooleanaddAll(Collectionc)在Vector对象的尾部、依次添加集合对象c中的所有元素,成功返回truevoidaddElement(Objectobj)在Vector对象的尾部、增加对象obj,且对象的元素个数加1booleanremoveElement(Objectobj)如果对象非空,则删除Vector对象obj第一次出现的元素copyInto(ObjectanArray)把Vector对象指针所指位置的成分复制给数组anArray,要求数组anArray要足够大,否则会抛出异常Enumerationelements()返回对象的序列化元素intsize()返回对象的元素个数,5.3.3Data类,Data类提供了获取当前精确到毫秒时间的方法,并提供了许多方法截取当前时间的年、月、日等数值。Data类的构造方法有:Data()创建一个可精确到毫秒的当前时间的对象Data(longdate)创建一个可精确到毫秒的参数date指定时间的对象,date表示从GMT(格林威治)时间1970-1-100:00:00开始至某时刻的毫秒数。Calendar类定义了许多如YEAR、MONTH、DAY、HOUR、MINUTE、SECOND、DAY_OF_WEE等成员变量,Calendar类的get()方法可以获取这些成员变量的数值,5.3.4Enumeration接口,Enumeration接口主要用于集合类对象的序列化。一个集合类对象中包含有许多元素,所谓对象是序列化的,就是说可以依次取出该对象中的元素。Enumeration接口定义如下:publicinterfaceEnumerationObjectnextElement();/返回后续元素booleanhasMoreElements();/是否还有后续元素nextElement()方法返回后续元素;hasMoreElements()方法判断是否还有后续元素任何一个类,只要实现了Enumeration接口,其对象就是序列化的所谓对象是序列化的,就是说若连续调用nextElement()方法,每次将返回该集合对象当前元素的后续元素,5.4综合应用举例,【例5.1】问题和例2.14相同,即用随机数函数产生10个随机数,并把这10个数按从小到大的次序排序。要求:用Arrays类的sort()方法实现排序程序设计见例5.1程序,
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


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

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


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