Day6 Java学习日记

Day6 2019.11.6

异常处理

  • try 执行可能产生异常的代码
  • catch 捕获异常
  • finally 无论是否发生异常,代码总能执行 一般用来完成资源的释放
  • throw
  • throws

Java异常类

  • Exception
  • RuntimeException
  • FileNotFoundException
  • IOExceotion
  • NullPointerException
  • NumberFormatException
  • InputMismatchException

多重的catch块

根据异常的类型,抛出不同类型的异常

  • 一段代码可能会引发多种类型的异常
  • 当引发异常时,会按顺序来查看每个 catch 语句,并执行第一个与异常类型匹配的catch语句
  • 执行其中的一条 catch 语句之后,其后的 catch 语句将被忽略

练习

TryCatchTest.java

import java.util.InputMismatchException;
import java.util.Scanner;

public class TryCatchTest {

	public static void main(String[] args) {
		System.out.println("请输入1-5之间的数字进行选课:");
		Scanner in=new Scanner(System.in);
		try{
		int courseCode =in.nextInt();//从键盘输入数
		switch (courseCode) {
		case 1:
			System.out.println("C语言");
			break;
		case 2:
			System.out.println("J2EE");
			break;
		case 3:
			System.out.println("数据库");
			break;
		case 4:
			System.out.println("计算机网络");
			break;
		case 5:
			System.out.println("JSP");
			break;
			
		}
		
		}catch(InputMismatchException e){			
		System.out.println("输入类型不对,请输入数字!");
		System.out.println("发生错误:"+e);
		
		}catch(Exception e){			
			System.out.println("发生错误:"+e.getMessage());
			e.printStackTrace();
		}finally{
			System.out.println("结束");
		}

	}

}

throw 抛出异常

如果在当前环境无法解决一个异常,就要将其抛出,把异常交给调用者处理

  • 向外抛出一个运行时异常
  • 向外抛出一个非运行时异常,需要声明方法有异常 方法定义

throws 声明异常

  • 1.声明该方法可能会产生异常
  • 2.由调用者捕获异常

method constructor

  • method.invoke();//调用这个方法 传入对象参数和要对这个对象设置的值
  • constructor.newInstance();

你可能感兴趣的:(Day6 Java学习日记)