文档章节

Java中的异常处理

朱桂林
 朱桂林
发布于 2017/04/22 11:59
字数 470
阅读 9
收藏 0

    刚开始学习Java的时候,可能不会去考虑Java的异常处理,更多的是关心这段代码的功能是否实现,但是到了后期我们必须的关心到Java代码的异常处理。也就是我们平时讲到的抛出异常(thrown Exception),警戒区(try)以及异常的捕获(catch)。

    有面向对象语言对象功底的开发员都知道一个问题,在面向过程的语言里面,你在调用函数时,你是怎么知道函数调用是否成功的?一般是根据函数返回值来判断,比如返回0表示成功,返回-1表示失败。
    这种出错处理方式比较简单,有时你还想知道更多的出错信息。在面向对象语言里,使用异常(其实也是类)就可以很好的解决。把出错信息封装到异常类里面,这样当出错的时候,就可以根据捕获的异常对象获取更多的出错信息。
    在java里,throw关键字是用在语句里面抛出异常,throws是用来声明函数可能返回异常(这在平时中是用的最多的,因为在写代码的时候我们很难去了解到自己写的代码可能存在那些问题,就可以通过这种方式将它抛出,通过catch捕获处理)。例如:
public class Jdbctest{
        
    public static void test(Object o) throws Exception {
        if(o == null){
            throw new Exception("在这里出错了,参数是null对象");
            }
        }
    public static void main(String args[])
    {
        try{
            test(null);
        }
        catch(Exception e)
        {
            e.printStackTrace();
        }
    }
}

控制台输出结果

java.lang.Exception: 在这里出错了,参数是null对象
    at Jdbctest.test(Jdbctest.java:6)
    at Jdbctest.main(Jdbctest.java:12)
分析:

    主体main函数执行test方法,抛出异常。通过catch捕获到异常,并通过printstacktrace()打印出来。

       
    

© 著作权归作者所有

共有 人打赏支持
朱桂林
粉丝 0
博文 12
码字总数 11343
作品 0
产品经理

暂无文章

flume -- fileChannel简要分析其过程

flume之event写入FileChannel doPut(event)-->获取共享锁后[log.lockShared();]-->FlumeEventPointer ptr = log.put(transactionID, event); 此处的log.put即将transactionID及event进行后续......

-九天-
35分钟前
2
0
Linux与FreeBSD有什么区别?

基础 许多人所称的“Linux”实际上不是 Linux。Linux 从技术上说只是 Linux 内核,典型的 Linux 发行版则包括了 Linux 内核和许多软件。这是为什么 Linux 有时被称为 GNU/Linux。事实上,许多...

linux-tao
42分钟前
3
0
jQuery学习笔记180924

jQuery - AJAX 简介 什么是 AJAX? AJAX = 异步 JavaScript 和 XML(Asynchronous JavaScript and XML)。 简短地说,在不重载整个网页的情况下,AJAX 通过后台加载数据,并在网页上进行显示...

颖伙虫
56分钟前
1
0
springboot整合vue小试牛刀

序 本文主要研究一下如何在springboot工程整合vue maven <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-we......

go4it
57分钟前
2
0
使用python的profiler工具

主要用来检测python coding的执行时间 fly profiler

steel7c4
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部