package com.test;
/**
*不管是在方法定义时就使用try catch,还是在定义方法时将异常抛出在调用方法时使用try catch都能达到效果
*
*/public class MyException02 extends Exception {
//创建一个有参的构造方法
public MyException02(String msg) { } //在创建方法时就使用try catch将异常捕获,在main方法中就只需要直接调用方法,而不需要对方法进行其他处理
public static void f(String msg) {
System.out.println("msg:" + msg);
try {
throw new MyException();
} catch (MyException e) {
//将错误信息发送到标准错误流,比直接将错误信息输出到System.out要好,因为后者有可能会被重定向
e.printStackTrace(System.err);
}finally {
System.out.println("f()中finally输出的语句");
}
} //声明一个异常,在方法中将异常抛出,在main方法中再进行处理
public static void g(String msg) throws MyException {
System.out.println("msg:" + msg);
throw new MyException();
} public static void main(String[] args) {
//直接调用方法,因为异常已经在方法中进行处理了
f("传一个String给f"); System.out.println(); //在调用方法时再对方法中的异常使用try catch进行处理
try {
g("传一个String给G");
} catch (Exception e) {
e.printStackTrace(System.out);
} finally {
System.out.println("g()中finally输出的语句");
} }
}

Java oop创建自定义异常的更多相关文章

  1. java中如何创建自定义异常Create Custom Exception

    9.创建自定义异常 Create Custom Exception 马克-to-win:我们可以创建自己的异常:checked或unchecked异常都可以, 规则如前面我们所介绍,反正如果是chec ...

  2. Java自学-异常处理 自定义异常

    Java 自定义异常 示例 1 : 创建自定义异常 一个英雄攻击另一个英雄的时候,如果发现另一个英雄已经挂了,就会抛出EnemyHeroIsDeadException 创建一个类EnemyHeroIs ...

  3. 一篇文章带你了解Java OOP思想

    Java OOP 思想深度刨析 Java面向对象编程 面向对象编程简称OOP(Object--对象.Oriendted--导向的.Programming--程序设计) 面向对象通俗来讲,就是指使用丰富 ...

  4. 使用java 程序创建格式为utf-8文件的方法(写入和读取json文件)

    使用java 程序创建格式为utf-8文件的方法:  try{            File file=new   File("C:/11.jsp");              ...

  5. Java中创建操作文件和文件夹的工具类

    Java中创建操作文件和文件夹的工具类 FileUtils.java import java.io.BufferedInputStream; import java.io.BufferedOutput ...

  6. Java值创建线程的两种方式对比

    在Java中创建线程的方式有两种,第一种是直接继承Thead类,另一种是实现Runable接口.那么这两种方式孰优孰劣呢? 采用继承Thead类实现多线程: 优势:编写简单,如果需要访问当前线程,只需 ...

  7. Java学习之自定义异常

    1 package com.gh; import java.util.Scanner; /** * 自定义异常 * @author ganhang * */ public class Exceptio ...

  8. Java 后台创建word 文档

    ---恢复内容开始--- Java 后台创建 word 文档 自己总结  网上查阅的文档 分享POI 教程地址:http://www.tuicool.com/articles/emqaEf6 方式一. ...

  9. java oop详解

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

随机推荐

  1. playbackRate控制音频播放倍速

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. Django框架(八)—— 模板层:模板导入、模板继承、静态文件

    目录 模板导入.继承.静态文件 一.模板导入 1.语法 2.使用 二.模板的继承 1.使用模板的继承 2.强调(注意点) 三.静态文件 1.在配置文件settings中配置过静态文件 2.导入使用静态 ...

  3. 51-Ubuntu-打包压缩-1-打包压缩简介

    打包压缩是日常工作中备份文件的一种方式 在不同操作系统中,常用的打包压缩方式是不同的 Windows 常用 rar Mac 常用 zip Linux 常用 tar.gz

  4. ABP 3.7版本迁移数据库报错未能加载文件或程序集“Castle.Core, Version=4.0.0.0”

    ABP 3.7 3.8版本升级后迁移数据库,报错未能加载文件或程序集“Castle.Core, Version=4.0.0.0”,System.ComponentModel.Annotations也可 ...

  5. 对TextVIew中特定字符串设定onTouchEvent方法

    上面是Iphone备忘录的图,笔者之前接到一个需求是实现点击文本框里的数字,弹出一个类似上图的按钮,显示出复制,要求是这个按钮的位置必须是根据你点击的位置进行定位(为什么这么说,是因为我们不可能把按钮 ...

  6. 微信小程序のwxml列表渲染

    列表渲染存在的意义 以电商为例,我们希望渲染5个商品,而又希望容易改变,我们就要在wxml中动态添加. <view> <block wx:for="{{products}} ...

  7. Pregel Aggregator

  8. Failed selinux 错误

    再看他如何解决,步骤大概是: 1.开机之后进入linux启动选择界面,停在平时启动的哪那一行按E键,进入grub编辑页面. 2.按↓键光标往下移,在标签fi下面的内容里加上一个enforcing=0. ...

  9. openwrt usb

    fdisk -l #以列表的形式,列出当前挂载盘的情况 for 属性规定 label 与哪个表单元素绑定 <form> <label for="male"> ...

  10. Delphi txt文件读取及写入

    简介:Delphi支持三种文件类型:文本文件.记录文件.无类型文件.文本文件的读...   在进行win32开发中对文件的读写是最常用的操作之一 Delphi 支持三种文件类型:  文本文件.记录文件 ...