Java异常处理学习
今天才开通了博客园的博客,希望可以记录自己学习的点点滴滴。最近去处理了一些私人事情,有点烦人,希望自己不要被这些破事所影响。
最近在看马士兵老师的Java基础的视频,(中断了一周)发现本科时候的胡老师讲的课和马老师好像啊,我在想胡老师是不是马老师的“信徒”呢?极有可能啊,他上课的ppt感觉就是截图的马士兵老师的ppt。我在想我们的胡老师这么厉害都是拜马士兵老师所赐,所以嘛,加油!
先把马士兵老师的ppt给放了进来,很有用。







总结一下:
1.马士兵老师已经总结的很好了,注意五个关键字,分别是try catch finally throw throws ,对主动抛异常的throw认识比较少,throw +异常对象 ,应该记住有这个写法。如下图这样的:

throw 举个领子:
throw抛出异常的方式比较直接:
if(age < 0){throw new MyException("年龄不能为负数!");}来看一个例子:
package Test; public class Test2 { public static void main(String[] args) { String s = "abc"; if(s.equals("abc")) { throw new NumberFormatException(); } else { System.out.println(s); } } }运行结果如下:

2.然后这张图很重要:

3.RuntimeException可以捕捉可以不捕捉,其他exception必须捕获,try后面可以跟着多个catch,先逮小的,再逮大的,就像那个那放了个很密的网,再放个空大的网肯定没用了。
4.在catch中声明的异常对象如exception e封装了异常事件发生的信息在catch语句块中可以使用这个对象的一些方法获取这些信息。如:

5.还有对于马老师视频中说的有人去面试的时候会让你写出5个以上的exception,这个平时要注意:

6.抛出异常的时候,可以不处理一直向外抛,直到抛出Java运行时系统处理,打印出堆栈信息。直接抛出exception是一种相当不好的编程习惯。
7.看到方法中有throws时,在使用它的时候必须try catch或者抛出异常。
Java异常处理学习的更多相关文章
- 这几种Java异常处理方法,你会吗?
摘要:我们在软件开发的过程中,任何语言的开发过程中都离不开异常处理. 本文分享自华为云社区<Java异常处理学习总结>,作者: zekelove . 我们在软件开发的过程中,任何语言的开发 ...
- [ Java学习基础 ] Java异常处理
一.异常概述 异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的.比如说,你的代码少了一个分号,那么运行出来结果是提示是错误 java.lang.Error:如果你用Sys ...
- Java 学习(10):java 异常处理
java 异常处理 异常发生的原因有很多,通常包含以下几大类: 用户输入了非法数据. 要打开的文件不存在. 网络通信时连接中断,或者JVM内存溢出. 三种类型的异常: 检查性异常: 最具代表的检查性异 ...
- java基础学习总结——异常处理
一.异常的概念 异常指的是运行期出现的错误,也就是当程序开始执行以后执行期出现的错误.出现错误时观察错误的名字和行号最为重要.
- [Java学习] Java异常处理基础
Java异常是一个描述在代码段中发生的异常(也就是出错)情况的对象.当异常情况发生,一个代表该异常的对象被创建并且在导致该错误的方法中被抛出(throw).该方法可以选择自己处理异常或传递该异常.两种 ...
- Java基础学习总结(22)——异常处理
一.异常的概念 异常指的是运行期出现的错误,也就是当程序开始执行以后执行期出现的错误.出现错误时观察错误的名字和行号最为重要. package cn.javastudy.summary; public ...
- Java基础学习(七) - 异常处理
1.异常概念 异常指的是程序在执行过程中出现的非正常的情况,导致JVM的非正常停止.在Java中,异常是一个类,产生异常就是创建异常对象并抛出一个异常对象. 异常指的并不是语法错误,语法错误,编译不会 ...
- 札记:Java异常处理
异常概述 程序在运行中总会面临一些"意外"情况,良好的代码需要对它们进行预防和处理.大致来说,这些意外情况分三类: 交互输入 用户以非预期的方式使用程序,比如非法输入,不正当的操作 ...
- java异常处理(父子异常的处理)
我当初学java异常处理的时候,对于父子异常的处理,我记得几句话“子类方法只能抛出父类方法所抛出的异常或者是其子异常,子类构造器必须要抛出父类构造器的异常或者其父异常”.那个时候还不知道子类方法为什么 ...
随机推荐
- JLink间接烧写【转自armobbs】
1. 简要说明 JLink的调试功能.烧写Flash的功能都很强大,但是对于S3C2410.S3C2440的Flash操作有些麻烦:烧写Nor Flash时需要设置SDRAM,否则速率很慢:烧写Nan ...
- 关于setVisibility的几个常量
在xml文件中,view控件一般都会有android:visibility这个属性 android:visibility:gone|cisible|invisible 在代码中,可以通过方法setVi ...
- 【转】链接任意目录下库文件(解决错误“/usr/bin/ld: cannot find -lxxx”
netbeans构建项目也出现了同样的问题.猜测是netbeans内部就用的是-l 这种编译方式,所以需要把***.a手动改为lib***.a 原文地址:链接任意目录下库文件(解决错误“/usr/bi ...
- IOS中录音后再播放声音太小问题解决
1.AVAudioSessionCategory说明 1.1 AVAudioSessionCategoryAmbient 或 kAudioSessionCategory_AmbientSound 用于 ...
- [SinGuLaRiTy] 2017-04-08 综合性测试
[SinGuLaRiTy-1016] Copyright (c) SinGuLaRiTy 2017. All Rights Reserved. 对于所有的题目:Time Limit:1s | Me ...
- 无侵入进行SDK的初始化
话不多说,下面开始,nagios具体的介绍,可以搜一下,这篇文章为作者在实际操作中整理出来,写出来的都是负责人的内容~ 环境准备 此文档共用2台服务器的配置,操作系统均为centOS6.7,安装用户都 ...
- Chrome插件-Postman Interceptor
postman有一个chrome插件 Postman Interceptor,可以让postman中发送请求的时候使用这个网站的浏览器cookie Postman Interceptor,可以让pos ...
- Mybatis学习笔记(七) —— 关联查询
一.一对多查询 需求:查询所有订单信息,关联查询下单用户信息. 注意:因为一个订单信息只会是一个人下的订单,所以从查询订单信息出发关联查询用户信息为一对一查询.如果从用户信息出发查询用户下的订单信息则 ...
- python BeautifulSoup基本用法
#coding:utf-8 import os from bs4 import BeautifulSoup #jsp 路径 folderPath = "E:/whm/google/src_j ...
- 2015苏州大学ACM-ICPC集训队选拔赛(2)1004
草爷要的数 Problem Description 今天校队队员们准备放松一下,我们队就准备选一些数字玩,然而每个人喜欢的数字是不同的,刻盘喜欢x(1<=x<=1^9),凯凯喜欢y(1&l ...