山东青岛安卓培训就业中心 专业Android软件工程师培训,手机软件开发人才就业实训中心0532-85025005

Java异常处理-----自定义异常

 

自定义异常

问题:现实中会出现新的病,就需要新的描述。 
      分析: Java的面向对象思想将程序中出现的特有问题进行封装。 
      案例:  定义功能模拟凌波登录。(例如:lb(String ip))需要接收ip地址

1.当没有ip地址时,需要进行异常处理。 
1. 当ip地址为null是需要throw new Exception(“无法获取ip”); 

  1. 但Exception是个上层父类,这里应该抛出更具体的子类。 

    1. 可以自定义异常

     

2.自定义描述没有IP地址的异常(NoIpException)。

  1. 和sun的异常体系产生关系。继承Exception类,自定义异常类名也要规范,结尾加上Exception,便于阅读

/* 自定义异常   */classNoIpExceptionextendsException {    NoIpException() {    }    NoIpException(String message) {        super(message);    }}classDemo {publicstaticvoid main(String[] args) throws NoIpException {        System.out.println();        String ip = "192.168.10.252";        ip = null;        try {            Lb(ip);        } catch (NoIpException e) {            System.out.println("程序结束");        }    }    /*     *      * 凌波教学     */publicstaticvoid Lb(String ip) throws NoIpException {        if (ip == null) {            // throw new Exception("没插网线吧,小白");thrownew NoIpException("没插网线吧,小白");        }        System.out.println("醒醒了,开始上课了。");    }}
  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

  • 11

  • 12

  • 13

  • 14

  • 15

  • 16

  • 17

  • 18

  • 19

  • 20

  • 21

  • 22

  • 23

  • 24

  • 25

  • 26

  • 27

  • 28

  • 29

  • 30

  • 31

  • 32

  • 33

  • 34

  • 35

  • 36

  • 37

  • 38

  • 39

  • 40

  • 41

  • 42

  • 43

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

  • 11

  • 12

  • 13

  • 14

  • 15

  • 16

  • 17

  • 18

  • 19

  • 20

  • 21

  • 22

  • 23

  • 24

  • 25

  • 26

  • 27

  • 28

  • 29

  • 30

  • 31

  • 32

  • 33

  • 34

  • 35

  • 36

  • 37

  • 38

  • 39

  • 40

  • 41

  • 42

  • 43

案例:模拟吃饭没带钱的问题

1.定义吃饭功能,需要钱。(例如:eat(double money)) 
2.如果钱不够是不能吃放,有异常。 
3.自定义NoMoneyException();继承Exception 提供有参无参构造,调用父类有参构造初始化。at 方法进行判断,小于10块,throw NoMoneyException(“钱不够”);  
4.eat 方法进行声明,throws NoMoneyException 
  5.如果钱不够老板要处理。调用者进行处理。try{}catch(){} 。

classNoMoneyExceptionextendsException {    NoMoneyException() {    }    NoMoneyException(String message) {        super(message);    }}classDemo {publicstaticvoid main(String[] args) {        System.out.println();        try {            eat(0);        } catch (NoMoneyException e) {            System.out.println("跟我干活吧。");        }    }    publicstaticvoid eat(double money) throws NoMoneyException {        if (money < 10) {            thrownew NoMoneyException("钱不够");        }        System.out.println("吃桂林米粉");    }}
  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

  • 11

  • 12

  • 13

  • 14

  • 15

  • 16

  • 17

  • 18

  • 19

  • 20

  • 21

  • 22

  • 23

  • 24

  • 25

  • 26

  • 27

  • 28

  • 29

  • 30

  • 31

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

  • 11

  • 12

  • 13

  • 14

  • 15

  • 16

  • 17

  • 18

  • 19

  • 20

  • 21

  • 22

  • 23

  • 24

  • 25

  • 26

  • 27

  • 28

  • 29

  • 30

  • 31

 

Tags:

发布: 青软于老师 分类: 未分类 评论: 0 浏览: 0
留言列表
发表留言
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。