class Test {
static void throwOne() throws SQLException, IllegalAccessException {
System.out.println("Inside throwOne.");
throwTwo();
throw new SQLException("sql");
}
static void throwTwo() throws IllegalAccessException {
System.out.println("Inside throwTwo.");
throw new IllegalAccessException("demo");
}
public static void main(String args[]) {
try {
throwOne();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
throws 是抛出异常,try{...}catch{...}是捕获、处理异常
在throwOne()中,会抛出SQLException,throwOne()不会处理SQLException,他会抛出,由调用她的main方法
来处理,在main方法中,由try语句块,捕获throwOne方法中抛出的异常,并由catch语句块进行处理。又,在throwOne
方法中调用了throwTwo方法,throwTwo抛出了IllegalAccessException 异常,这个IllegalAccessException 由调用他
的throwOne进行处理,而throwOne中没有对IllegalAccessException 进行处理的办法,不能处理,所以继续抛给调用他
的main方法,main会对IllegalAccessException 异常进行捕获和处理。
上面的例子是只能捕获到IllegalAccessException 异常,而捕获不了SQLException的,因为throwTwo抛出异常后,
throwOne也奖抛出IllegalAccessException 异常,语句不继续执行,没有抛出SQLException。
static void throwTwo() throws IllegalAccessException {
System.out.println("Inside throwTwo.");
//throw new IllegalAccessException("demo");
}
如果将throwTwo中的第二行代码注释掉,将不再抛出IllegalAccessException,从而SQLException将会被main捕获处理。
分享到:
相关推荐
异常处理的一般格式,用法流程及关键字throw throws try catch finally exception等的使用
主要给大家介绍了关于C++中try throw catch异常处理的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者使用C++具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
5.3 throws与throw ;5.3 throws与throw;5.3.1 使用throws声明抛出异常;5.3.1 使用throws声明抛出异常;5.3.1 使用throws声明抛出异常;5.3.1 使用throws声明抛出异常;5.3.2 使用throw抛出异常;5.3.2 使用throw抛出...
学习目标 理解异常的概念 运用 try 块、catch 块和 finally 块处理异常 运用多重 catch 块处理异常 运用嵌套 try/catch 块处理异常 运用关键字 throw 和 throws 处理异常 运用JAVA编写和使用...
java 异常处理练习 try catch finally throw throws的使用,包含代码及注释
异常的处理方式:throws和try-catch方法 try-catch处理方式: try{ //一个 (1)可能出现异常的语句 } catch(XxxException e /*捕获的异常*/){ //0或n个 (2)处理异常的代码 } finally{ //0或1个 (3)...
1.异常的概念2.异常的分类3.捕获并处理异常(try……catch/finally)try……catch块 try……多catch块 try……catch/finally块 4.抛出异常throws5.自定义异常 自定义异常的来由 操作步骤 ...小结 throw与throws的区别
(2)会使用throw和throws (3)会使用log4j记录日志 3.实践 实践一:使用try-catch进行异常处理 需求说明 (1)使用UserDaoImp1类的方法查找用户,并用User类的getUserInfo()方法输出用户信息 (2)使用一个不...
关键字:try、catch 用个形象的比喻,如果说throws相当于职业介绍中介的话,那try和catch就是一对倒霉的打工仔。很有意思,throws只是告诉编译器--方法可能产生的异常问题,然后把问题处理抛给try和catch。...
前言 在android开发过程中,我们经常遇到异常的...异常通常的处理方式有 throw/throws 以及 try-catch 两种。今天我们主要讲解throw/throws这一类的处理。 throw:抛出异常,一般是一个具体的异常。放置在方法体内
文章目录: ...4. throw 和 throws 的区别是什么? 5. final、finally、finalize 有什么区别? 6. NoClassDefFoundError 和 ClassNotFoundException 区别? 7. try-catch-finally 中哪个部分可以省略?
throw和throws有什么区别 try catch finally分别在什么情况下使用 求1000 的结果中包含多少个0 注:1000 1×2×3×4×5× ×999×1000 编写程序 打印1到100之内的整数 但数字中包含7的要跳过 例如:17 27 71 72 ...
相比之下,当你调用method2()时,则不需要把它放在try/catch程序块当中,因为它会抛出的exception不是checked exception,而是runtime exception。会抛出runtime exception的方法在定义时不必声明它会抛出...
实践三:使用throw和throws 需求说明 修改UserDaoImpl类的updateUser(User user)方法,要求如果用户id被修改,则: (1)不执行更新 (2)抛出一个Exception异常 (3)异常消息是“用户id不能修改” 实现思路及...
•当前方法明确知道如何处理该异常,程序应该使用try...catch块来捕获该异常,然后在对应的catch 块中修改该异常。 •当前方法不知道如何处理这种异常,应该在定义该方法时声明抛出该异常。 Runtime异常的...
public static void saveKeyPair(KeyPair kp, String basePath) throws Exception { FileOutputStream fos = new FileOutputStream(StringUtils.isNotBlank(basePath) ? (basePath + RSAKeyStore) : RSAKeyStore);...
private static void init() throws IOException{ Properties prop = new Properties(); prop.load(DButil.class.getResourceAsStream("/db_config.properties")); info = new DButil(); info.driver = prop....
public static String desEncrypt(String source, String desKey) throws Exception { try { // 从原始密匙数据创建DESKeySpec对象 SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DES"); ...
public void ftpUploadByText(String content ,String uploadDir,String ftpFileName) throws Exception{ try { ftpClient = this.login(); //创建目录 createDir(ftpClient,uploadDir); // 设置上传目录 这个...
// If anything goes wrong, log it, wrap the exception and re-throw it try { Class.forName(driverClassName); db = DriverManager.getConnection(url, username, password); } catch (Exception e) { ...