zoukankan      html  css  js  c++  java
  • Java入门——day20

    一、今日学习

    1.使用throws抛出异常

    (1)声明抛弃异常是在一个方法声明中的throws子句中指明的。

    (2)形式:[修饰符] 返回类型 方法名(参数1,参数2,...) throws 异常列表{}

    (3)示例:

     (4)throws字句中同时可以指明多个异常,说明方法将不对这些异常进行处理,而是声明抛弃它们。


    2.通过throw抛出异常

     (1)手动抛弃异常对象是通过throw语句实现的。但可以抛弃的异常必须是Throwable或其子类的实例。

    (2)形式:throw 异常名;

    (3)throw关键字主要是用在try块中,用来说明已经发生的异常情况。throw关键字后面跟随一个异常对象,用来说明发出的异常类型。

    (4)如果方法中用throw语句抛出了异常,那么,在方法的头部必须用throws声明将要抛出的异常。

    (5)示例:


     3.自定义异常

    (1)若要建立自己的异常类型,只要定义Exception的一个子类就可以了,子类不需要实际执行什么,它们在类型系统中的存在允许把它们当成异常使用。

    (2)形式:

    1 class 自定义异常 extends 父异常类名
    2     {
    3           类体;
    4     }

    (3)示例:

     1 public class study{
     2     public static void main(String[] args) {
     3         study s=new study();
     4         try {
     5             s.add(2,3);
     6         }catch(MyException e) {
     7             e.printStackTrace();
     8         }
     9     }
    10     private void add(int a,int b) throws MyException{
    11         if(a==b) {
    12             throw new MyException("输入两个数相等");
    13         }
    14     }
    15 }
    16 class MyException extends Exception{
    17     public MyException(String msg) {
    18         super(msg);
    19     }
    20     public MyException(String message,Throwable cause) {
    21         super(message,cause);
    22     }
    23     public MyException(Throwable cause) {
    24         super(cause);
    25     }
    26 }

    二、遇到问题

    遇到警告:The serializable class MyException does not declare a static final serialVersionUID field of type long

    查阅发现,这是Eclipse提供的功能,点warning的icon两下Eclipse会自动给定,当然也可以关掉它,serialVersionUID让该类别serializable后兼容。

    三、明日学习

    用log4j记录异常日志信息

  • 相关阅读:
    一步一步学grails:7 MVC
    虚拟机安装CentOS7
    虚拟机安装windows sever2008
    微信console
    centOS7常用操作命令
    lr事务
    2.0通信之调用ADO.NET Data Services(数据服务)
    Silverlight应用程序中如何获取ASP.NET页面参数
    2.0网页之可脚本化, 与DOM的交互, 与JavaScript的交互
    2.0Tip/Trick之MessageBox, Popup, 循环的几种实现方法, 动态变换主题, 本地化(多语言), 响应鼠标双击事件
  • 原文地址:https://www.cnblogs.com/znjy/p/13378874.html
Copyright © 2011-2022 走看看