Think in Java 笔记_Chapter12_1_Exception基础_异常处理2

异常处理方式2

  1. throw向上抛出

    package cn.seven.shengsiyuan.exception;
    
    /*
     * 2015年04月05日13:05:35
     * Location:501
     *
     * 异常处理方法2:抛出异常,由调用该方法的方法  进行处理该异常
     */
    public class ExceptionThrowDemo {
    
    	public static void main(String[] args) throws Exception {
    		// TODO Auto-generated method stub
    
    		ExceptionThrowDemo demo = new ExceptionThrowDemo();
    		//demo.method();//若直接这样写 出现 Unhandled exception type Exception
    		demo.method();//因此需对该异常进行处理:两种方式,1.自己处理 2.向上抛出:main方法中抛出到最后就是虚拟机进行处理了
    
    	}
    
    	public void method () throws Exception{//告诉调用该方法这个其他方法,我这个方法会抛出异常
    
    		System.out.println("hello");
    		throw new Exception();//抛出一个异常对象,因为所有的一场都是异常
    	}
    }
    
  2. 有些异常 编译时候 可以通过,有些异常不可以通过,为何?

      1. int a = 3;
        int b = 0;
        int c= a / b;//这里即使可能抛出异常,但是编译通过,运行时抛出异常`    
        System.out.println("---hello---");
        
      2. /* 
        
        抛出的异常,编译不通过,因为异常的类型:
        --CheckedException(非运行时异常),
        
        在编译时候就需要进行处理_处理方式两种:
        1,try{}catch{}
        
        2, 在调用该会产生异常的方法 所在的方法声明 throws Exception
        --对于UncheckedException(运行时异常),
        
        如c=a/b;我们可以对其进行处理,也可以不处理,推荐不处理
        
        */
        public static void main(String[] args)  {
        
        	ExceptionThrowDemo demo = new ExceptionThrowDemo();
        	demo.method();//若直接这样写 出现 Unhandled exception type Exception
        
        	}
        
        public void method () throws Exception{//告诉调用该方法这个其他方法,我这个方法会抛出异常
        
        	System.out.println("method");
        	throw new Exception();//抛出一个异常对象,因为所有的一场都是异常
        
        	}
        
时间: 2024-08-03 15:33:52

Think in Java 笔记_Chapter12_1_Exception基础_异常处理2的相关文章

Think in Java 笔记_Chapter12_1_Exception基础_异常处理3_自定义异常以及抛出多个异常的处理

自定义异常 package cn.seven.shengsiyuan.exception; public class MyException extends Exception{//非运行时异常,因为只是继承了Exception并非RuntimeException public MyException() { // TODO Auto-generated constructor stub } public MyException(String message){ super(message);/

Think in Java 笔记_Chapter12_1_Exception基础_继承和RuntimeException处理1

java中异常 异常Exception 是我们可以处理的,可以进行补救,遇到异常就不会执行了? package cn.seven.shengsiyuan.exception; /* * Time:2015年04月05日12:24:58,清明节 * Location:501 * */ public class ExceptionDemo1 { public static void main(String[] args) { // TODO Auto-generated method stub in

Java 笔记之基础复习

1.& 与 &&的区别 两个都有逻辑与的功能.但是所不同的是,当&两边的表达式不是boolean类型的时候,&具有位与的功能:&&是短路与,当判断到前一个表达式为false的时候,将不会再去计算后面的表达式. 如: int i = 0; System.out.println((1==0)&(0==(i++))); System.out.println(i); 输出是: false 1 但是, int i = 0; System.out.pri

java笔记--多线程基础

多线程技术 在java中实现多线程技术有两种方式: 1.继承Thread类: 2.实现Runnable接口 这两种方法都需要重写run()方法:通常将一个新线程要运行的代码放在run()方法中(这是创建没有返回值线程的方法)由于java只支持单继承,当类已经继承有其他类时,只能选择实现Runnable接口在启动线程时需要使用Thread类的start()方法,而不是直接使用run()方法: 如: public static void function() { for (int i = 0; i

【BigData】Java基础_异常处理

概念 在我们写程序的时候,当遇到异常,整个程序就中断了,导致程序奔溃,这就会影响用户体验度,为了让程序在运行的的过程中不出现这种问题,当程序报错时候,我们把这种错误先自行处理了,让程序保持正常运行. 例如:一个求商的程序,除数是用户输入,那么用户输入的除数可能是千奇百怪的,可能是数字,也可能是字符,还可能是0,如果输入字符或者0,那么就报错了,这时候程序就中断了,无法继续执行后面的内容,所以就得异常处理了. 注意:异常处理有2种方法 (1)使用try-catch结构来捕获异常 (2)下层方法可以

Think in Java 笔记_Chapter20_1_Annocation基础语法

/2015年04月05日12:15:05 <张龙老师>_先看看java里面有什么注解(貌似没说注解能干什么)+++[具体的到后面再看完这几章节再做总结]-编译期间类型检查保护,在实际的源代码级别保存所有的信息,对源代码和字节码有强大的检查和操作能力 @Override-复写或者覆盖父类的方法时候需要加上注解 >>>编程思想中说 把isohi当前的方法覆盖超类中方法,方法签名?? @Deprecated-有些方法虽然仍然有效,但是感觉过时了不想再被别人使用,可以加上这个在调用方

Java笔记之基础语法

/* 1 标识符 1.1. 在程序中所定义的一些名称,由26个英文字母大小写,数字0-9,符号:_$组成 1.2 定义合法的标识符规则: a.数字不可以开头 b.不可以使用关键字 c.Java中严格区分大小写,在起名字时,为了提高阅读性,尽量起有意义的名字. 2 常量与变量 2.1 常量:常量表示不能改变的数值 2.2. Java中的常量分类: a.整数常量.所有整数 b.小数常量.所有小数 c.布尔型常量.较为特有,只有2个数值.true false d.字符常量.将一个数字字母或者符号用单引

_14python基础_异常处理

#coding:utf-8 #======================异常处理============================ '''捕捉异常可以使用try/except语句. try/except语句用来检测try语句块中的错误,从而让except语句捕获异常信息并处理''' try: #正常操作 file = open('data.txt', 'r') file.readline() except IOError,msg: # 发生异常,执行这块代码 print msg else

Java笔记 - 线程基础知识

前言 进程是一个执行中程序的实例,是操作系统进行资源分配和调度的一个独立单元.线程是进程中一个单一的程序控制流,是 CPU 调度和分派的基本单元.进程在执行时拥有独立的内存空间,进程中的线程可以共享进程的内存空间.在 Java 的世界中,进程可以拥有多个并发执行的线程,多线程是实现并发任务的方式. 线程创建和启动 1. 实现 java.lang.Runnable 接口 定义线程执行的任务,需要实现 Runnable 接口并编写 run 方法. public interface Runnable