标签:返回结果 pac 抛出异常 ice 哈哈哈 没有 ++i oid 哈哈
package com.qf.demo02; public class Test4Finally { public static void main(String[] args) { /* * try...catch...finally完整的语法结构 * finally可选的 * * 操作数据库:向数据库中添加一条记录。。 * step1:和数据库建立连接。。 * * step2:增加一条数据 * * step3:和数据库断开连接,释放资源 */ try{ /* * 有可能产生异常的代码。。 * 10行 * 5行问题啦 * 后5行不能执行了。。 * * step1:和数据库建立连接。。 * * step2:增加一条数据 * */ }catch (ArithmeticException e) { /* * 处理某个类型的异常。。 */ }catch (Exception e) { /* * 处理其他类型的异常。。 * * step3:和数据库断开连接,释放资源 */ }finally { /* * 可选的操作 * step3:和数据库断开连接,释放资源 * 文件断开,资源的释放,临时文件的删除。。。 */ System.out.println("此处的代码,无论是否产生异常,一定会被执行的。。。"); } } }
package com.qf.demo01; import java.util.Arrays; /* * 1.try和catch中有return语句,finally里面的代码也会被执行。。 * * 2.应该避免finally中出现return语句:Eclipse会给出警告:"finally block does not complete normally" * finally中return语句,会覆盖前面的return语句。 * * return的作用? * A:返回一个结果, * B:结束这个方法。 * finally的作用? * 首尾工作:可能产生异常catch,也可能不产生异常try,有些必须要执行的代码--->finally * 断开连接,释放资源,删除临时文件。。。。 * 3.finally中尝试修改变量 * 验证出:finally语句在return语句执行之后,return返回结果之前执行。 */ public class Test2Return { public static int test1() { int i = 10; try { int j = i / 0;// 产生异常。。 System.out.println("try..."); return 1;// 1.返回一个结果,2.同时结束了该方法的执行。。 } catch (Exception e) { System.out.println("catch.."); return 0; } finally { // 无论是否产生异常:try,,catch,,此处的代码一定会被执行。。 System.out.println("finally..."); // return 100;//逻辑有误 } } // 该方法返回一个引用类型的数据:数组,对象,StringBuffer。。。。 public static int[] test3() { int[] arr = { 1, 2, 3 }; try { // int i = 10/0; System.out.println("try..."); return arr;//引用类型:地址 } catch (Exception e) { System.out.println("catch..."); return null; } finally { System.out.println("finally..."); arr[0] = 100;// 在finally中修改引用类型的数据。。 } } private static int doSome() { int i = 100; try { return i;//基本类型:数值 } finally { System.out.println("...."); i = 30; // ++i; // i++; } } public static int test2() { int j = 5; if (j > 0) { return 0; } return 100; } public static void main(String[] args) { // System.out.println(test1()); System.out.println(Arrays.toString(test3())); System.out.println(doSome()); } }
package com.qf.demo03; public class Test7Throw { public static void main(String[] args) { Exception e = new Exception("自己抛着玩的"); try { throw e;//程序中主动抛出一个异常对象,什么时候自己扔了异常,打断程序的执行。。 } catch (Exception e1) { e1.printStackTrace(); } System.out.println("main..over..."); String s1 = "abc"; s1.charAt(0); } }
package com.qf.demo03; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; public class Test6Throws { // 该方法用于求2个数商 /* * throws关键字,表示该方法对外声明,表示该方法不处理异常,调用处处理。 */ public static void test1() throws ArithmeticException {//运行时异常 int i = 10; int j = 0; int div = i / j; System.out.println(div); } public static void test2() throws FileNotFoundException {//受检异常:必须处理 File file = new File("C:\\Ruby\\chutian.jpeg"); FileInputStream fis = new FileInputStream(file); } public static void test3(){ try { test2(); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); }//方法调用处 } public static void main(String[] args) {//JVM test1(); test3(); System.out.println("啊哈哈哈哈哈哈哈哈"); } }
package com.qf.demo01; /* * 我自己定义的异常 */ class MyException extends Exception{ //提供有参构造方法。。 public MyException(String msg){ super(msg);//调用父类的有参构造:提供异常的信息 } public MyException(){ super();//父类的无参构造,没有提供异常的信息 } } public class Test1Exception { /* * 设计一个方法,用于检验年龄,年龄不合法,抛出一个异常 */ public static void checkAge(int age) throws MyException{ if(age < 0){ // return; throw new MyException("年龄不能为负数。。"); } System.out.println("年龄输入正确,请继续。。。"); } public static void checkName(String name){//"" , null if(name== null || name.length() == 0){ throw new RuntimeException("请正确输入用户名,为空。。"); } System.out.println("用户名正确,请继续。。。"); } public static void main(String[] args) { // MyException e = new MyException("我自己抛着玩的"); // try { // throw e; // } catch (MyException e1) { // e1.printStackTrace(); // System.out.println("我自己定义的异常。。。"); // } // try { // checkAge(-30);//调用处 // } catch (MyException e) { // e.printStackTrace(); // } // // System.out.println("go on...."); checkName(""); } }
标签:返回结果 pac 抛出异常 ice 哈哈哈 没有 ++i oid 哈哈
原文地址:https://www.cnblogs.com/yzg-14/p/13401413.html