一、基础概念

  (1)异常:Java程序在运行时期发生的不正常情况。

     Java就按照面向对象的思想对不正常情况进行描述和对象的封装。

  (2)异常问题分类: (Throwable:定义对于问题共性的功能。)

     1.Error:由系统底层发生的,jvn告诉使用者。不做针对性处理,直接修改代码。

     2.Exception:发生并告诉使用者,可以进行针对性的处理。

  (3)异常的处理情况

    1.遇到问题不进行具体的处理,继续抛给调用者。就是在函数上通过throws关键字声明异常。目的是让调用者可以进行处理。

    2.针对性的处理方式:捕获!
      try
      {
      //有可能发生异常的代码。
      }
      catch(异常类 变量)
      {
      //这是真正的捕获,处理异常的代码;
      }
      finally
      {
      //一定会被执行的代码。
      }

 二、虚拟机处理异常代码

 class Demo
{
int div(int a,int b)throws Exception//声明异常Exception
{
return a/b;
}
} class ExceptionDemo1
{
public static void main (String[] arge)throws Exception//将异常Exception抛给虚拟机处理
{
Demo d = new Demo();
int num = d.div(4,0);
System.out.println("num="+num);
System.out.println("over");
}
}

  

 三、捕获处理异常代码(二)


 class Demo
{
int div(int a,int b)throws Exception//声明异常Exception
{
return a/b;//throw new ArithmeticException("/ by zero")抛给调用者。
}
} class ExceptionDemo1
{
public static void main (String[] arge)
{
Demo d = new Demo(); //对异常进行处理
try
{
int num = d.div(4,0);
System.out.println("num="+num);
}
catch(Exception e)
{
//处理这个对象,可以使用该对象的方法。
System.out.println("处理异常的代码:除数不能为0");
System.out.println(e.getMessage());//异常信息
System.out.println(e.toString());//异常名称+异常信息
e.printStackTrace();//异常名字+异常信息+位置。jvm默认处理收到异常就是调用这个方法。将信息显示在屏幕上。
}
System.out.println("over");
}
}

  

Java面向对象之异常(异常处理方式)的更多相关文章

  1. Java面向对象之异常【一】

    目录 Java面向对象之异常[一] 异常的继承体系 Error Exception 异常是否受检 unchecked exceptions(不受检异常) checked exceptions(受检异常 ...

  2. Java面向对象作业-用接口方式测试向下转型

    Java面向对象作业-用接口方式测试向下转型 根据视频的里实例 我们直接修改Test2测试方法: package com.java1234.chap03.sec13; public class Tes ...

  3. Java面向对象之异常详解

    目录 Java面向对象之异常[一] Java面向对象之异常[二] 捕获异常的规则 访问异常信息 异常对方法重写的影响 finally详解 Java面向对象之异常[一] Java面向对象之异常[二] 往 ...

  4. Java面向对象之异常(自定义异常)

    一.基础概念 在自定义的程序中,如果有了问题.也可以像java中的异常一样,对问题进行描述. 注意:1.继承RuntimeException的异常,不需要进行处理.在执行过程中有异常会直接抛出. 2. ...

  5. JAVA面向对象-----成员内部类的访问方式

    成员内部类的访问方式 1.内部类可以直接访问外部类的成员属性.(孙悟空相当于内部类飞到牛魔王的肚子里面去). 2.外部类需要访问内部类的成员属性时需要创建内部类的对象. 1.在外部类的成员函数中创建内 ...

  6. Java面向对象之异常(throw与throws)

    一.基础概念 1.throw和throws的区别: 位置不同:throws用在函数上,后面跟的是异常类,可以跟多个. throw用在函数内,后面跟的是异常对象. 功能不同:throws用来声明异常,让 ...

  7. Java_IO异常处理方式_入门小笔记

    package IO; import java.io.FileWriter; import java.io.IOException; /** * IO异常处理方式 */ class FileWrite ...

  8. 夯实Java基础系列10:深入理解Java中的异常体系

    目录 为什么要使用异常 异常基本定义 异常体系 初识异常 异常和错误 异常的处理方式 "不负责任"的throws 纠结的finally throw : JRE也使用的关键字 异常调 ...

  9. JAVA异常及其异常处理方式

    异常处理 异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的.比如说,你的代码少了一个分号,那么运行出来结果是提示是错误 java.lang.Error:如果你用Syste ...

随机推荐

  1. 一个7重嵌套表EF添加语句,注意子表赋值过程中只需写子表主键赋值,不需要写子表外键=父表主键。EF创建时会自动将子表外键设为与父表主键相等

    AIRPORT_HELIPORT tt = new AIRPORT_HELIPORT()            {                AIRPORT_HELIPORT_UUID = Gui ...

  2. 4.solr学习速成之bean

    以bean的形式提交索引,以bean的形式查询出来 package com.liucheng.solr; import java.io.Serializable; import org.apache. ...

  3. python----python使用mysql

    Python操作MySQL主要使用两种方式: 原生模块 pymsql ORM框架 SQLAchemy pymql pymsql是Python中操作MySQL的模块,在windows中的安装: pip ...

  4. Android 4 学习(14):Internet Resources

    参考<Professional Android 4 Development> 使用Internet资源 打开URI String myFeed = getString(R.string.m ...

  5. Init & Deinit & ARC

    [Init & Deinit] 1.switf中,init不返回值,只负责初始化成员变量.在init方法中可以初始化常量. 2.默认初始化. 3.Swift provides an autom ...

  6. 关于 pycharm 安装第三方模块的一些经验

    解决pycharm问题:module 'pip' has no attribute 'main' 更新pip之后,Pycharm安装package出现报错:module 'pip' has no at ...

  7. const与指针的纠缠

    当使用带有const的指针时其实有两种意思.一种指的是你不能修改指针本身的内容,另一种指的是你不能修改指针指向的内容. 先说指向const的指针,它的意思是指针指向的内容是不能被修改的.它有两种写法. ...

  8. c++多线程编程(一)

    C++本身并没有提供任何多线程机制,但是在windows下,我们可以调用SDK win32 api来编写多线程的程序,下面就此简单的讲一下: 创建线程的函数 HANDLE CreateThread( ...

  9. os.chdir("/deepmatching") OSError: [Errno 2] No such file or directory: '/deepmatching'

    #os.chdir("/deepmatching")os.chdir(os.path.dirname(os.path.abspath("deepmatching1&quo ...

  10. integer encoding vs 1-hot (py)

    https://github.com/szilard/benchm-ml/issues/1 glouppe commented on 7 May 2015 Thanks for the benchma ...