JAVAday24

异常: 
 1.异常体系:
    Throwable: 类
         Error: 
             VirtualMachineError: 虚拟机错误
                   StackOverflowError:  栈内存
                   OutOfMemoryError: 内存泄漏错误 
                         
         Exception:
            IOException: IO流异常
            RuntimeException: 运行时异常
               IndexOutOfBoundsException: 下标越界
                    StringIndexOutOfBoundsException:
                 ArrayIndexOutOfBoundsException:            
                    数学异常
                   NullPointerEception:
                ClassCastException
                NumberFormatException  
                  
    IllegalArgumentException: 非法参数异常

受检查异常(CheckedException)不是异常体系中,是编译器只能编译器Editplus自动帮我们检测的

java中处理异常的方式: 
  1.捕获异常:
        try{
        
        }catch(){
        
        }finally{
        
        } 
            
  try{
      有可能出现异常的代码
    
  }catch(NullPointerException | ClassCastException e ){
       打印异常信息
  }
  
  try{
  
  }finally{
  
  }
  
*** finally块儿一定执行吗? 
      1)通常情况下会执行 ,但是 如果系统中出现了System.exit(0): 的代码时 就不执行
      2)在没有进入到 try catch finally 代码块儿就已经出现了 异常
           那么finally 块儿也不会执行
            
 return 关键字的用法: 
  1.作为方法的返回值
     return 需要返回的值;       
  
  2.作为 终止方法的关键字
            return;
  
 finally块儿中忌讳 使用return关键字
   1.会将正常的返回值覆盖掉
   2.会覆盖掉异常信息
   
   所以finally块儿 中不可以使用 return 关键字

  2.抛出异常:
       throws 和 throw 区别:
         throws 声明 异常类型
         throw 抛出 new 异常类型();
         
 自定义异常类型的时候:
   throw new MyException();      
=======================================================
集合的作用: 
  1. 变量只能存储单个数据
  2. java提供了数组容器: 
       1.数组长度一旦确定不可以改变
       2.数组必须通过下标来获取元素
  3.为了解决 数组的局限问题
  
集合框架: 容器  
   java提供的集合框架的体系:
Iterable:接口                 Iterator: 真正的迭代器 
         单值存储
   Collection: 接口
            List: ArrayList :实现类   线程不安全的 ,性能快
                       常用构造器: 
                             ArrayList();
                             ArrayList(int capacity); 容量 
                          ArrayList(Collection e); 
                
                     常用方法: 
                          remove(int index);  根据下标删除
                          remove(Object obj); 根据对象删除 
                         set(int index, E element)
 ****            subList(int fromIndex, int toIndex); 分页
                    toArray(); 将一个集合编程 对象数组
                         
                    LinkedList :实现类
                    Vector: 实现类  (过时了)  线程安全的 ,性能慢
 List接口的特点: 
    有序的(存储顺序和 输出顺序一致),可重复的 , 允许null 存储
    
  凡是 继承 , 或实现 Iterable 接口的 都是具有了 迭代能力:
    但是真正的迭代功能是  Iterator 迭代器做的     
            
  Iterator 中  尽量不要调用多次 next方法
            
      
Collections 和 Collection 区别: 
    Collections:是操纵集合的工具类    
         shuffle(); 打乱顺序输出
         sort(); 排序 只能从小到大 排序
            
         双值存储
   Map:接口 
          key - value   

 


 

你可能感兴趣的:(java学习)