java核心API知识点

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

Java知识点总结JavaSE部分Object类:java.lang.Object位于顶端,是所有对象的直接或者间接父类。如果一个类没有写extends某个类,那么这个类就是继承自java.langObjectObject类的方法:toString()返回该对象的字符串表示。hashCode()返回该对象的哈希码值。equals()指示其他某个对象是否与此对象“相等”。notify()唤醒在此对象监视器上等待的单个线程notifyAll()唤醒在此对象监视器上等待的所有线程getClass()返回此Object的运行时类。clone()创建并返回此对象的一个副本。wait()在其他线程调用此对象的notify()方法或notifyAll()方法前,导致当前线程等待。注意:==和equals的区别?==是比较两对象是不是同一个,根据地址值判断。equals是比较两个独立对象内容是否相同。String类:java.lang.String是字符串类型,是“不可变”字符串,没有线程安全问题。String在设计之初,就进行了优化,将字符串保存在字符串常量池中,当我们创建一个字符串的时候,虚拟机会在常量池中找是否创建过相同的字符串,如果存在则直接引用。对字符串的任何变动都是创建一个新的对象,而不是影像以前的对象!String相关的方法:subString()截取字符串,下标从0开始(含头不含尾)split()将字符串根据符号分割。toLowerCase()将字符串转换成小写。toUpperCase()将字符串转换成大写。trim()去掉字符串前后的空白字符。startWith()判断字符串是否以参数字符串开头。endWith()判断字符串是否以参数字符串结尾。length()返回字符串的长度。indexOf()返回指定字符在此字符串中第一次出现处的索引。replace()替换字符串。String、StringBuffer、StringBuilder的区别:1、String是不可变长度的字符串,StringBuffer、StringBuilder是可变长度的字符串,可通过append()追加字符串。2、StringBuffer线程安全,因为进行了一些安全校验操作,所以效率相对低一些。3、StringBuilder是线程不安全的,但是效率高,需要jdk-1.5以上。Collection接口:注意:Collection是一个接口。Collections是一个工具类,它包含有各种有关集合操作的静态方法。List集合实现类:List是一个接口,是collection的子接口,元素可重复,有序。List通常有两个实现类:①ArrayList:数组形式的集合,适用于查询操作。②LinkedList:链式集合,适用于增删。list常用方法:size()返回集合的长度。clear()清空集合。isEmpty()用于返回集合是否为空。contains()检查对象是否被包含在集合中。add()向滚动列表的末尾添加指定的项。remove()删除集合中的元素。注意:vector线程安全List高级数据结构--队列:队列Queue:限制了对线性表的访问方式,只能从一端添加元素,另一端取出元素。Queue接口在java.util.Queue下。队列遵循先进先出的原则:FIFO,队列不支持插队。Queue常用方法:offer()将一个对象添加到队尾。poll()从队列中取出元素,是最早的那个元素,取出后,该元素会从队列中删除。peek()获取队首元素,不删除。List高级数据结构--栈:栈Deque是常用的数据结构,是Queue队列的子接口,栈将双端队列限制为只能一端入队和出队,在java.util.Deque下。栈Deque遵循先进后出原则:FILODeque常用方法:push()压栈,向栈中存入数据pop()弹出,从栈中取出数据peek()获取栈顶位置元素,但是不取出Set集合实现类:set是一个接口,是collection的子接口,元素不可重复,无序。在set集合存储对象中,不存在两个对象equals比较为true的情况。Set通常有两个实现类:①HashSet:利用hash散列算法的方式实现。②TreeSet:利用二叉树的方式实现。注意:Hashtable线程安全Map接口:Map接口定义的集合又称为查找表,是键值对的形式,key-valuekey不可重复,但是保存的value可以重复。基本原理图:Map集合中常用的方法:①Vput()将元素以key-value的形式存入map②Vget()返回key所对应的value值③booleancontainsKey()判断集合中是否含有key④booleancontainsValue()判断集合中是否含有value遍历Map的三种方法:1、Values()获取value值2、keySet()将key存入一个set集合后返回3、EntrySet()获取键值对key-valueCalendar日历calendar是一个抽象类,不能实例化!世界上不同的地区有不同的子类实现。使用的设置时间的通用方法为get()calendar只有计算月份从0开始,以此类推,11为12月份,其他时间正常从1开始!实例:SimpleDateFormat日期转换类作用:该类可以很方便的对字符串和日期之间进行相互转换。方法:①parse方法:按照特定格式将字符串转化为Date对象。②fomat方法:将Date数据(对象)转换为字符串。注意:DateFormat是SimpleDateDormat的父类,是一个抽象类。实例:包装类Java中对8中基本类型进行了包装类型的处理,每一个包装类都封装了一个基本类型,同时还提供了包装类的使用方法。包装类的目的:将基本类型当做引用类型看待。包装类的名字:除了Integer(int)和Character(char)外,其他的都是基本类型的首字母大写!装箱:①Doubled1=Double.valueOf(2.2);②Doubled2=newDouble(2.2);拆箱:doubled3=d2.doubleValue();注意:JDK1.5+实现自动拆包装箱!RandomAccessFile类随机访问文件:可以方便的读写文件,但是只能一个字节(byte)一个字节的读取。1、计算机在保存文件的时候是bytebybyte保存的。2、RandomAccessFile打开模式:“rw”可读写,“r”只读。3、RandomAccessFile是根据指针读取的,指针到哪里,就读到哪里。操作常用方法:voidseek(longpos):从文件开头到指针偏移量,在该位置发生下一次读写操作。getFilePointer():获取指针位置。intskipBytes(intn):跳过输入的n个字节。注意:读写操作结束以后,务必关闭。调用close()方法。IO流根据方向分为输入流和输出流。流向我们程序的流叫做输入流,从程序向外的流叫做输出流。(可以这么记:读入写出)java的流相当于自来水管道,只不过里面流动的是字节!InputStream和OutputStream接口定义了输入输出流的特征。流的分类:1、根据来源根据不同分为:①基本流(节点流):从特定的地方读取的流,有来源根据。②处理流(高级流,过滤流):没有来源根据,使用的时候要基于基本流。时使用已经存在的输入或输出流进行连接。2、根据处理的数据不同分为:①字节流:以一个“字节”为单位,通常Stream结尾。②字符流:以一个“字符”为单位,通常以Reader/Writer为单位。3、用于读写文件的基本流:FOS/FIS注意:FOS中,向file写入文件时,如果文件不存在,会自动创建一个文件。缓冲字节高级流:作用:对传入的流进行加工处理,可以嵌套使用。1、BufferedInputStream:2、BufferedOutputStream:如何判断一个流是低级流还是高级流?答:看构造方法:如果构造方法中如果有要求传入参数,那么这个流就是高级流。所以,高级流是没有无参构造器的,都需要传入一个流。注意:缓冲流一般情况下为写入操作的流,在数据写完后一定要使用flush()方法,该方法的作用是一次性将缓存区的数据写出,不管缓存区有多少数据,都先写出去!DIS和DOS:处理基本数据的流分为DateInputStream和DateOutputStream字符高级流:ISR和OSW以“字符”为单位,一次处理一个字符(unicode),所有字符流都是高级流。PrintWriter另一种缓冲“字符”输出流,以行为单位,常用它做输出。Java异常处理机制异常处理中的父类是Throwable类,其下属有Exception和Error。我们在程序中可以捕获的是Exception。Error是系统级别的错误,我们不可控。Exception是程序级别的异常,我们可以控制。异常处理语句:try{//关键字,只有一个try语句//可能发生异常的代码片段}catch(Exceptione){//列举代码中可能出现的异常类型,//可能有多个catch语句,在这里进行处理}finally{//必须会执行,finally中不要书写return,否则该方法永远返回这个return的值}catch的捕获是由上至下的,所以不要把父类的异常写在子类的上面,否则子类永远没有机会处理。例如:try{fis=newFileInputStream(H:/金莎-被风吹过的夏天.mp3);}catch(FileNotFoundExceptione){e.getMessage();//获取有关异常事件的信息}catch(Exceptione){e.printStackTrace();//用来跟踪异常事件发生时,堆栈的的内容。}关键字throw和throws:throw关键字:用于抛出一个异常,当我们的方法出现错误时(不一定是真实的异常),我们要将错误抛出给调用方法处理,而抛出去的时候就是使用throw关键字。throws关键字:不希望在某个方法中直接处理异常,而是希望调用者统一处理该异常,我们可以同时声明可能抛出的异常种类,通知调用者捕获。区别:throw:抛出异常throws:声明异常注意:实际运用中,不能在main方法中throws异常,因为main方法的调用者是JVM机!面试题:常见异常种类?NullPointerExceptionIllegalArgumentExceptionClassCastExceptionNumberFormatExcptionArrayOutofBoundsExceptionArithmeticExceptionWPSOfficeMakePresentationmuchmorefun@WPS官方微博@kingsoftwps谢谢聆听!

1 / 27
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功