chapter10Java基本类库.ppt

上传人:sccc 文档编号:5378219 上传时间:2023-07-01 格式:PPT 页数:58 大小:329.01KB
返回 下载 相关 举报
chapter10Java基本类库.ppt_第1页
第1页 / 共58页
chapter10Java基本类库.ppt_第2页
第2页 / 共58页
chapter10Java基本类库.ppt_第3页
第3页 / 共58页
chapter10Java基本类库.ppt_第4页
第4页 / 共58页
chapter10Java基本类库.ppt_第5页
第5页 / 共58页
点击查看更多>>
资源描述

《chapter10Java基本类库.ppt》由会员分享,可在线阅读,更多相关《chapter10Java基本类库.ppt(58页珍藏版)》请在三一办公上搜索。

1、Chapter 9 Java 基本类库,Java类库主要由创始公司sun提供,成为Java基本类库(JFC),java 类库以包的形式进行组织和实现,java类库由多个包组成,每个包里包含多个具有一定关系的类和接口,分别实现相关的功能。java.lang包构成了java类库的核心,包含java类库中最基础的类。程序运行时,系统自动将java.Lang包引入程序,java.lang,Object是java中所有类的超类数据类型包装类,把java 的所有基本数据类型用类的形式包装起来,用来获取与类型相关的信息,并可以执行相关的操作Math类,提供一组数学函数和两个常数,用于进行各种数学运算,被关键

2、字final修饰,不能派生出Math的子类字符串类,实现了文本串的定义和使用,有String类和StringBuffer类,String类实现质和长度不变的常数串,StringBuffer用户值和长度都有变化System类,提供程序访问系统资源的方法,提供一个独立于具体系统的编程接口,System不能派生子类,Runtime类,封装了运行时候的环境,可以访问java虚拟机的运行状态,并对其实现相应的操作线程类,一些列用于线程管理和操作的类和接口,实现了java的多线程处理类操作类,有Classs类和ClassLoader类组成。类Class提供类的运行时候的信息,类classloader提供了

3、把类装入运行时环境的方法错误处理相关类,例如Throwable类用于处理级别比较低的错误,Exception派生于Throwable类,提供异常的处理方法,是所有异常类的超类,error类用来处理运行时的错误Process类,支持系统过程,用于访问当前过程的信息,提控制过程的方法,Java.io,提供了java语言的标准输入输出功能,支持在不同的输入输出设备上进行数据的读写操作,基本输入输出数据流类、过滤输入输出数据流类,随机输入输出数据流类等,java.util,提供了一些实用的工具类,包括对日期处理的Date类,处理变长数组的Vector类,产生随机数的Random类,用于串标记的Stri

4、ngTokenizer类等等,java.awt javax.swing,绘图功能,包括Graphics和Graphics2D用户的图形接口和布局管理功能Checkbox Button LayoutManager等图形接口元素对用户接口发生的时间进行相应的交互控制功能Event EventQueue,java.awt.event,使程序处理不同类型的事件,使每个图形接口元素可以拥有处理本身发生时间的能力比如可以为Button添加事件监听接口,如ActionListener KeyListener MouseListener WindowsListener类,类中包含对不同接口元素事件的处理,例如

5、ActionEvent等等,java.applet包,提供运行于internet浏览器中的java小应用程序编写所需要的类和接口,包含实现java程序的网络功能的各种类 接口 异常处理类,URL Stock ServerSocker等,java.rmi,远程调用,java.cobra java.cobra.orb,java.reflectjava.securityJava.sql javax.sql,Java类库的使用,继承类库中的类直接使用类 中的成员在用户自定义的类中直接创建系统类的对象实现类库中的接口,import java.lang.Math;public class MathTest

6、public dounble area(double i)return Math.PI*i*i;public static void main(String args)double a=6;MathTest mt=new MathTest();System.out.println(“area=”+mt.area(a);,Java文档的使用,http:/,Object类和System类,在Java语言中,Object类是所有类的直接或者间接超类,包括Java类库中所有的类和用户程序中的类在写类定义语句时,不需要写extends Object子句Object类中的成员是所有Java类的共有属性,O

7、bject类中包含的主要方法如下:,protected Object clone()生成一个调用该方法的对象的副本Button c,b=new Button(“ok”);c=(Button)b.clone();public boolean equals(Object obj);比较两个对象是否相同protected void finalize()回收当前对象时需要完成的清理工作,在对象被销毁前,必须被调用public final Class getClass()返回当前对象所属的类信息,返回值为java.lang.ClassPublic String toString()该方法用来获取一个对象

8、本身的相关信息,这些信息按字符串方式返回,public class TestClone implements Cloneableint a=7;int b;public static void main(String args)throws ExceptionTestClone x=new TestClone();TestClone y,z;z=x;y=(TestClone)x.clone();x.b=60;System.out.println(x.b);System.out.println(y.b);System.out.println(z.b);System.out.println(x.e

9、quals(y);System.out.println(x.equals(z);,System类,System类是Java中非常有用的类,它主要实现两个功能,一是可以获得系统的标准输入输出,另一个是能够获取系统的资源,是一个final类,不能派生子类,内部的所有成员都是静态的,可以直接通过域名访问其成员System有三个域public static InputStream in;public static PrintStream out;public static PrintStream err;,三个成员变量都java.io包内的系统类char a=System.in.read();Syst

10、em.out.println(“HELLO WORLD!”);常用方法public long currentTimeMills()返回从1970.1.1.0到当前系统时间的微秒数 public void arrayCopy(Object src,int srcPos,Object dest,int destPos,int length)将数组src从位置srcPos开始,复制长度为length的数据到dest中public void gc()实现无用内存的回收功能,gc方法强制java虚拟机进行垃圾回收工作,使无用内存能够获得释放public exit(int status)强制java虚拟机

11、退出运行状态,并返回状态信息status,6.3 String类和StringBuffer类,String类用来表示常量字符串,String的构造方法有一下几种String()用来生成空字符串String(String original)生成一个值为original的字符串String(byte bytes,int offset,int length)生成一个对字节数组的值按照运行平台支持的编码解码后得到的字符数组的一部分组成的字符串String(byte bytes,String charsetName)生成一个对字节数组的值按照charsetName规定的编码解码后得到的字符数组的一部分组

12、成的字符串,String(byte bytes,int offset,int length,String charsetName)生成一个对字节数组的值按照charsetName规定的编码解码后得到的字符数组的值相同的字符串String(char value)生成一个值与字符数组的值相同的字符串String(char value,int offset,int count)生成一个值与字符数组的部分值相同的字符串String(StringBuffer buffer)一个StringBuffer类的对象作为参数来创建一个新的字符串,public class StringConstrupublic

13、static void main(String args)String s1=new String();String s2=new String(HELLO WORLD);byte b=49,50,51,52;String s3=new String(b);String s4=new String(b,1,2);System.out.println(s1);System.out.println(s2);System.out.println(s3);System.out.println(s4);,字符串常用基本方法,public int length();返回当前字符串对象的长度public v

14、oid getChars(int srcBegin,int srcEnd,char dst,dstBegin);从当前字符串常量对象中截取一段字符串(srcBegin为开始位置,srcEnd为结束位置)并转换为字符数组dst,从dst的destBegin位置开始赋值public boolean startsWith(String prefix);判断当前字符常量是不是以参数prefix字符串常量开始的,如果是,返回true,否则返回falsepublic boolean endsWith(String suffix);public char charAt(int index);,字符串比较方法

15、,public compareTo(String anotherString);比较两个字符串常量的大小,若两个字符串一样,返回0,若当前字符串常量大,则返回值大于0,否则返回小于0String s1=“abcd”;String s2=“abey”;int result=pareTo(s1);,字符串的连接方法,public String concat(String str);把参数字符串常量str接在当前字符串常量的后面,生成一个新的字符串常量,并返回该字符串,字符串的查找方法,public int indexOf(char ch);返回ch对应字符串常量中出现的第一个位置,如果该字符串中没

16、有该字符,返回-1public int indexOf(int ch,int fromIndex);是对上面方法indexOf(int ch)的重载,新增的参数fromIndex为在字符串中进行查找的起始点,字符串的类型转换方法,public static String valueOf(boolean b);public static String valueOf(char c);public static String valueOf(int i);public static String valueOf(long l);public static String valueOf(float

17、f);public static String valueOf(double d);,StringBuffer类,StringBuffer()创建一个空的StringBuffer类对象StringBuffer(int length)创建一个长度为参数length的StringBuffer类的对象,length不能小于0,否则将要触发NegativeArraySizeException异常StringBuffer(String str);创建StringBuffer类的对象,并赋值为字符串常量,StringBuffer类的基本方法,public int length();public int c

18、apacity();返回字符串变量分配的内存数量public void setLength(int newLength);改变串缓冲区的长度为newLengthpublic String toString();将当前字符串变量转换为String类对象并返回,由于StringBuffer类对象一般不能直接显示,所以需要将StringBuffer类的对象转换成为String类的对象,再将他的值显示出来,StringBuffer类的追加方法,public StringBuffer append(boolean b)public StringBuffer append(char c)public St

19、ringBuffer append(int i)public StringBuffer append(long l)public StringBuffer append(float f)public StringBuffer append(double d)StringBufferDemo.java,StringBuffer类的插入方法,public StringBuffer insert(int offset,boolean b)public StringBuffer insert(int offset,char c)public StringBuffer insert(int offset

20、,int i)public StringBuffer insert(int offset,long l)public StringBuffer insert(int offset,double d)public StringBuffer insert(int offset,float f)public StringBuffer insert(int offset,String str)public StringBuffer insert(int offset,char str),6.4 Java类型包装类,在Java语言中,只有属于基本数据类型的变量不需要使用类定义实现,使用基本数据类型定义的

21、变量主要与运算符结合进行各种运算,但是他们不能完成与数据类型有关的操作,例如变量的数据类型转换,Java类库专门提供了基本数据类型包装类,将一个数据类型转换成一个类,从而能够实现相应的方法,封装类,对于简单类型数据,Java对它们进行了封装,使它们都有相应的封装类,封装类的例子,public class WrapperClasspublic static void main(String args)Integer i=new Integer(10);Integer j=new Integer(10);System.out.println(i=j);,封装类例子,10,10,i,j,toStri

22、ng()方法,在Object类中,定义了一个toString()方法,用于返回一个表示这个对象的字符串覆盖该方法能用来提供某对象的自定义信息简单类型使用它们的封装类,可转换成String,=和 equals(),=和equals()都是用于相等型判断的操作符=操作符用来判断两个引用是否指的同一个对象,或者两个简单类型的值是否相等equals()方法用来判断对象的内容是否相等,相等的条件在该类中定义Object类的equals()方法直接用=实现,覆盖默认的equals(),在Object类中的equals()方法直接使用=实现,不实用覆盖默认的equals()方法按照自己的需要,在equals

23、()方法中定义对象相等的含义,数据类型包装类的构造方法,除了Character类,其他所有的类型包装类都拥有两个构造方法,两个方法都拥有一个参数,但是类型不同Short s1=new Short(short)23);Short s1=new Short(”23”);,基本数据类型与String类之间的转换方法,public static boolean getBoolean(String name)public static byte parseByte(String s)public static double parseDouble(String s)public static short

24、 parseShort(String s)public static int parseInt(String s)public static float parseFloat(String s)public static long parseLong(String s),6.5 Math类,Math类也称为数学类,他用来完成一系列的数学运算,Math类中包含了许多数学方法,如sin,exp,abs等,他在解决与数学有关的一些问题有着非常重要的作用Math类中有两个静态的常量域E和PI,求绝对值的方法,public static int abs(int a)public static long

25、abs(long a)public static float abs(float a)public static double abs(double a),求最大值和最小值的方法,public static double max(double a,double b)public static double min(double a,double b),其他的方法,public static double ceil(double a)大于等于a的最小整数public static double floor(double a)小于等于 a的最大整数public static double exp(

26、double a)public static double pow(double a,double b)public static double sqrt(double a)public static double log(double a)public static synchronized double random(),public static double cos(double a)public static double acos(double a)public static double sin(double a)public static double asin(double

27、a)Public static double rint(double a)对a进行四舍五入运算,Vector类,Vector类是java.util包提供的一个工具类,提供对象的顺序存储功能,Vector类与数组类似,都将数据按照一定的顺序组织起来,但是他与数组有很大的区别。Vector类中数据类型必须是由Object类派生的对象,不可以是其他类型Vector类中允许不同类型的数据共存,而数组中的数据必须为同一数据类型Vector类是一个编程数组,可以根据需要增加容量,而数组是定长的Vector类中封装了许多有用的方法,可以对其中的对象序列做数据的插入删除和查找工作,Vector类的基本方法,V

28、ector类的突出优点是能够实现变长数组,按应用的要求增加或减少数组容量,而且还有很多对数据进行各种操作的方法,共有4个重载的构造方法Vector()创建一个空的Vector对象,初始容量是10,当需要更大的容量时,自动将容量加倍Vector(Collection c)创建一个Vector对象,对象的数据是由Collection类型的变量c赋值Vector(int initialCapacity)创建一个空的Vector对象,容量为参数initialCapacity指定的大小Vector(int initialCapacity,int capacityIncrement)创建一个空的Vecto

29、r对象,容量为参数initialCapacity制定的大小,当需要更大的容量时,容量的增量capacityIncrement,Vector类的基本方法,public int capacity()返回当前当前Vector对象中容量public int size()返回当前对象中的元素个数public void setSize(int n)将当前Vector对象的大小设为n个元素,如果n大于当前的元素,便在对象末尾添加空元素,如果n小于当前的大小,那么位置n后所有的元素都会被删除public void trimToSize()将当前Vector对象的容量都缩减为当前的真实大小,import jav

30、a.util.Vector;public class TestVectorpublic static void main(String args)Vector v1=new Vector();Vector v2=new Vector(20);Vector v3=new Vector(30,5);System.out.println(v1.capacity=+v1.capacity()+,v1.size=+v1.size();System.out.println(v2.capacity=+v2.capacity()+,v2.size=+v2.size();System.out.println(v

31、3.capacity=+v3.capacity()+,v3.size=+v3.size();v1.setSize(3);v1.trimToSize();System.out.println(v1.capacity=+v1.capacity()+,v1.size=+v1.size();,数据插入与访问方法,public void addElement(Object obj)public boolean add(Object obj)public boolean add(int index,Object obj)public void insertElementAt(Object obj,int

32、index),import java.util.Vector;public class TestVector1public static void main(String args)Vector v1=new Vector();v1.add(new Integer(4);v1.addElement(new Integer(7);System.out.println(the element in v1);for(int i=0;iv1.size();i+)System.out.println(v1.get(i)+);System.out.println();v1.add(1,new Intege

33、r(5);v1.insertElementAt(new Integer(6),2);System.out.println(after the insert,the element in v1);for(int i=0;iv1.size();i+)System.out.println(v1.get(i)+);,修改和删除数据方法,public Object set(int index,Object obj)public boolean remove(Object obj)public Object remove(int index)public void removeElementAt(int

34、index)public void removeAllElements()在调用set(int index,Object obj)和remove(int index)两个方法中,返回值都是Object类型的对象,在调用这两个方法时,需要将方法的返回对象强制转换成Object类的相应具体子类的对象Long x=(Long)v1.remove(1);,import java.util.Vector;public class TestVector2void printMessage(String s,Vector v)System.out.println(s);if(v.size()=0)Syste

35、m.out.println(no data!);elsefor(int i=0;iv.size();i+)System.out.println(v.get(i)+);System.out.println();,public static void main(String args)TestVector2 m=new TestVector2();Vector v1=new Vector();for(int i=0;i4;i+)v1.add(new Integer(i+2);String s1=the element in v1:;m.printMessage(s1,v1);v1.setEleme

36、ntAt(new Integer(30),3);v1.set(2,new Integer(22);m.printMessage(after the modify,the element in v1:,v1);,Integer x=(Integer)v1.remove(2);System.out.println(the element to delete is+x.toString();v1.setElementAt(new Integer(30),3);v1.removeAllElements();m.printMessage(after the delete,the element in v

37、1:,v1);,数据的查找方法,public Object elementAt(int index)public boolean contains(Object obj)public int indexOf(Object obj,int star_index)public int lastindexOf(Object obj,int star_index),面向对象程序设计进阶,封装类=和equals()toString()方法,Import java.util.Vector;public class TestVector3public static void main(String args

38、)Vector v1=new Vector();Integer x=new Integer(6);for(i=0;i6;i+)v1.add(new Integer(i+2);v1.add(new Integer(i+4);System.out.println(the element in v1:);for(i=0;i6;i+)System.out.println(v1.get(i)+);System.out.println();Integer x1=(Integer)v1.elementAt(2);System.out.println(the element in index2 is+x1);System.out.println(v1.contains(x);System.out.println(v1.indexOf(x,0);System.out.println(v1.indexOf(x,6);,

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

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号