java异常处理和类集

    xiaoxiao2022-07-05  177

    第十五章 异常处理

    在java 中,所有的异常都以类的方式存在的

    一 抛出异常throw

    由try -catch 来接受异常 1.在程序中抛出异常 格式:throw 异常类实例对象; 抛出异常时,使用throw关键字抛出的是异常类的实例化对象。因此必须使用new关键字来产生一个对象 如下

    public class Plus { public static void main(String[] args) { int a=1,b=0; try { if(b==0) throw new ArithmeticException("算数异常");//用throw抛出异常类的一个实例化的对象 , 抛出异常 else System.out.println(a); } catch(ArithmeticException e)//这里用catch来捕获抛出的异常,并直接给异常对象起了名字e 换成其他名称也可以 { System.out.print("抛出的异常为:"+e); } } } 输出为 抛出的异常为:java.lang.ArithmeticException: 是算数异常

    2.指定方法抛出异常 3.编写自定义的异常 方法:

    class 自定义异常 extends Exception { }

    第十六章 java 类集框架

    list存对象

    Map的功能方法

    方法put(Object key, Object value)添加一个“值”(想要得东西)和与“值”相关联的“键”(key)(使用它来查找)。方法get(Object key)返回与给定“键”相关联的“值”。可以用containsKey()和containsValue()测试Map中是否包含某个“键”或“值”。 标准的Java类库中包含了几种不同的Map:HashMap, TreeMap, LinkedHashMap, WeakHashMap, IdentityHashMap。它们都有同样的基本接口Map,但是行为、效率、排序策略、保存对象的生命周期和判定“键”等价的策略等各不相同。 1.区别 1.1、Collection 和 Map 的区别 容器内每个为之所存储的元素个数不同。 Collection类型者,每个位置只有一个元素。 Map类型者,持有 key-value pair,像个小型数据库。

    1.2、各自旗下的子类关系 Colection –List:将以特定次序存储元素。所以取出来的顺序可能和放入顺序不同。 –ArrayList / LinkedList / Vector –Set : 不能含有重复的元素 –HashSet / TreeSet Map –HashMap –HashTable –TreeMap

    1.3、其他特征 List,Set,Map将持有对象一律视为Object型别。

    Collection、List、Set、Map都是接口,不能实例化。 继承自它们的 ArrayList, Vector, HashTable, HashMap是具象class,这些才可被实例化。 vector容器确切知道它所持有的对象隶属什么型别。vector不进行边界检查。 注意: 1、Collection没有get()方法来取得某个元素。只能通过iterator()遍历元素。 2、Set和Collection拥有一模一样的接口。 3、List,可以通过get()方法来一次取出一个元素。使用数字来选择一堆对象中的一个,get(0)…。(add/get) 4、一般使用ArrayList。用LinkedList构造堆栈stack、队列queue。

    arratlist 的简单应用

    import java.util.ArrayList; public class Plus { public static void main(String[] args) { ArrayList a =new ArrayList(); System.out.println("数组大小为"+a.size()); a.add("a"); a.add("p"); System.out.print(a);//显示数组a的内容 } }

    LinkedList 类用来创建链表 其getFirst ()方法获得链表第一个元素 同理 还有类似的几个方法 添加 移除

    HashSet 类 TreeSet类 里 元素自动排序

    通过迭代的方法访问 这些数据


    枚举类型的定义 Enum 枚举名{枚举值}

    第十八章 Annotation

    1.@override 即在复写方法的时候在上一行 添加该注释 表示下面的方法是 复写

    2.@deprecated 表示不建议使用该操作 3.自定义Annotation 格式: public @interface 名称{}

    多线程就是同时运行多个程序块

    最新回复(0)