1.捕获异常
try——执行可能产生异常的代码
catch——捕获异常
finally——无论是否发生异常,代码总能执行
2.声明异常
throws——声明方法可能要要抛出的各种异常
3.抛出异常——手动抛出异常
4.try——catch块捕获异常
public   void   method(){
try{
//代码段(此处不会产生异常)
}catch(异常类型  ex){
//对异常进行处理的代码段
}
//代码段
 
 
}
5.try——catch块后的代码段
public  void  method(){
try{
//代码段1
//产生异常的代码段2
//代码段3
}catch(异常类型  ex){
//对异常进行处理的代码段4
}
//代码段5
}
6.异常类型不匹配
public  void  method(){
try{
//代码段1
//产生异常的代码段2
//代码段3
}catch(异常类型  ex){
//对异常进行处理的代码段4
}
//代码段5
 
}
7.在catch中处理异常,加入用户自定义的处理信息
System.err.println(“出现错误:被除数必须是整数,”+“除数不能为0”).
8.调用方法输出异常信息
e.printStock  Trace();

抛出异常——throw:Java语言中,可以通过使用throw关键字来自行抛出异常。

同时它的区别还包括以下三方面:

(1)    作用不同:throw用于程序员自行产生并抛出异常,throws用于声明在该方法内抛出的异常。

(2)    使用的位置不同:throw位于方法体内部,可以作为单独语句使用。throws必须跟在方法参数列表后面,不能单独使用。

内容不同:throw抛出一个异常对象,而且只能是一个。throws后面跟异常类,而且可以跟多个异常类

 
 
 
  1. 熟悉使用try-catch-finally处理异常

异常:是指在程序运行中发生的不正常事件,会终止正在运行的程序, throw: 扔 抛 : throw new Exception();

throws:声明 方法之后。

IE ANC

IllegalArgumentException 无效的参数异常 Exception 顶级异常

AthimarticException 算术异常 ArrayIndexOutOfBoundsException 数组下标越界

NullPointerException 空指针异常 NumberFormatException 数字格式转换异常 “abc”

ClassNotFoundException 类没有找到 ClassCastException 类型转换异常

finally代码块唯一不会被执行到的情况? S1的时候:无论代码是否有异常,finally总会执行,释放资源代码放入finally。

  1. 会使用throw、throws抛出异常
  2. 掌握异常及其分类
  3. 使用log4j记录日志

声明异常 ,抛出异常

 

异常 Java oop的更多相关文章

  1. 异常:java.lang.LinkageError: loader constraint violation: when resolving interface method

    异常:java.lang.LinkageError: loader constraint violation: when resolving interface method "javax. ...

  2. android异常: java.net.ConnectException: localhost/127.0.0.1:8080 - Connection refused

    android手机做下载文件时,报了如下异常: java.net.ConnectException: localhost/127.0.0.1:8080 - Connection refused 模拟器 ...

  3. socket编程报异常java.io.EOFException

    一个客户端连接服务器的小程序,服务器端可以正常读取客户端发来的数据 但是当客户端关闭时,服务端也关闭了,并且抛出如下的异常: java.io.EOFException at java.io.DataI ...

  4. java oop详解

    近日来重温了一下java oop的知识.加深了对面向对象的理解.尤其时继承方面.故写一篇博客.记录一下自己的想法和心得 1.面向对象主要分为三大点(封装,继承,多态) 封装的思想促进了类的形成.相比于 ...

  5. 异常java.lang.IllegalArgumentException:attempt to create delete event with null entity

    异常java.lang.IllegalArgumentException:attempt to create delete event with null entity解决:路径问题,前台jsp和ja ...

  6. spring异常 java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderServlet

    spring异常 java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderServlet   情况 ...

  7. Storm 执行异常 java.lang.RuntimeException: java.nio.channels.UnresolvedAddressException 问题解决

    最近写的 binlog2kafka storm job 上线在一个新的集群环境中(storm 0.9.0.1, kafka 0.8), storm job 运行时报出如下异常: java.lang.R ...

  8. maven(多个模块)项目 部署 开发环境 问题处理历程【异常Name jdbc is not bound in this Context 异常java.lang.NoSuchMethodE】

    maven(多个模块)项目 部署 开发环境 问题处理历程[异常Name jdbc is not bound in this Context 异常java.lang.NoSuchMethodE] 201 ...

  9. AES加解密异常java.security.InvalidKeyException: Illegal key size

    AES加解密异常 Java后台AES解密,抛出异常如下:java.security.InvalidKeyException: Illegal key size Illegal key size or ...

随机推荐

  1. Linux下python多版本多环境介绍

     一.python多版本配置说明 安装python相关依赖 [root@centos6 ~]# yum install -y gcc make patch gdbm-devel openssl-dev ...

  2. Powerdesigner 从Oracle到mssql2008

    database->update model for database> ->系统数据源->选择用户,选择表,确定... 1.database->change Curre ...

  3. 【linux杂记】Ubuntu查看端口使用情况

    转载地址: https://www.linuxidc.com/Linux/2016-01/127345.htm Ubuntu查看端口使用情况,使用netstat命令: 查看已经连接的服务端口(ESTA ...

  4. 概念了解:CGI,FastCGI,PHP-CGI与PHP-FPM

    CGI CGI全称是“公共网关接口”(Common Gateway Interface),HTTP服务器与你的或其它机器上的程序进行“交谈”的一种工具,其程序须运行在网络服务器上. CGI可以用任何一 ...

  5. 源码阅读 - java.util.concurrent (一)

    java.util.concurrent这个包大致可以分为五个部分: Aomic数据类型 这部分都被放在java.util.concurrent.atomic这个包里面,实现了原子化操作的数据类型,包 ...

  6. XML中如果有特殊字符,比如> < 解决方案

    //只需要在代码前加这个就可以了<![CDATA[ 把代码写到这个位置 ]]>

  7. iOS组件化开发一使用source管理远端库升级(四)

    一.克隆远端库代码到本地选择master分支 1.克隆 2.代码会显示出你所有版本的tag 二.可以在Example目录下验证代码的正确行: cd 到库的文件夹然后 pod install comma ...

  8. 读取ClassPath下resource文件的正确姿势

    1.前言 为什么要写这篇文章?身为Java程序员你有没有过每次需要读取 ClassPath 下的资源文件的时候,都要去百度一下,然后看到下面的这种答案: Thread.currentThread(). ...

  9. MySQL编译安装及启动

    前言:源码预编译MySQL数据库,使用时cmake 方式,MySQL数据库官方出的数据库编译命令,和普通源码安装软件不同 (configure). CMake是一个跨平台的安装(编译)工具,可以用简单 ...

  10. Jmeter接口测试实例-牛刀小试

    本次测试的是基于HTTP协议的接口,主要是通过Jmeter来完成接口测试,借此熟悉Jmeter的基本操作. 本次实战,我是从网上找的接口测试项目,该项目提供了详细的接口文档,我们可以通过学习接口文档来 ...