Java中try catch处理异常示例


Posted in Java/Android onDecember 06, 2021

 描述说明:

public class TryCatchStu {

 /*try catch:自己处理异常

  *try{

  * 可能出现异常的代码

  *}catch(异常类名A e){

  * 如果出现了异常类A类型的异常,那么执行该代码

  *}...(catch可以有多个)

  *finally{

  * 最终肯定必须要执行的代码(例如释放资源的代码)

  *}

  *代码执行的顺序:

  *1.try内的代码从出现异常的那一行开始,中断执行

  *2.执行对应的catch块内的代码

  *3.继续执行try catch 结构之后的代码

  *注意点:

  *1.如果catch内的异常类存在子父类的关系,那么子类应该在前,父类在后

  *2.如果finally中有return语句,那么最后返回的结果肯定以finally中的返回值为准

  *3.如果finally语句中有return,那么没有被处理的异常将会被吞掉

  *重写的注意点:

  *1.儿子不能比父亲的本事大

  *2.儿子要比父亲开放

  *3.儿子不能比父亲惹更大的麻烦(子类的异常的类型不能是父类的异常的父类型)

  *异常类Api:

  •   *1.getMessage():获取异常描述信息字符串
  •   *2.toString():返回异常类的包路径和类名和异常描述信息字符串
  •   *3.printStackTrace():除了打印toString的信息外,还要打印堆栈信息

  */

实例代码:

public static void main(String[] args)
 {
  System.out.println(demo());
 }
 public static int demo(){
  GirlHome gh = new GirlHome("小陈陈",'男',28);
  try{
   gh.intoHome();
   System.out.println("进入了女生宿舍");
   return 0;
  }catch(SexOutException e){
   //System.out.println("出现了异常");
   //System.out.println(e);
   e.demo();
   e.printStackTrace();
  }catch (AgeOutException e) {
   // TODO: handle exception
  }finally{
   System.out.println("我必须被执行");
  }
  return 1;
  //System.out.println("愉快的一天结束啦");
 }

class GirlHome {
 public String name;
 public char sex;
 public int age;
 public GirlHome(String name,char sex,int age)
 {
  super();
  this.name = name;
  this.sex = sex;
  this.age = age;
 }
 //如果发现进入者是男的,那么抛出性别异常
 public void intoHome() throws SexOutException,AgeOutException{
  if(sex!='女'){
   SexOutException se = new SexOutException(name+"你不是女的,滚!!!");
   throw se;
  }
  if(age>25){
   throw new AgeOutException(name+"你的年龄太大了,滚!!!!");
  }
  System.out.println(name+"开心的进入了宿舍");
 }
 public void demo()throws Exception{}
}

class SmallGirlHome extends GirlHome{
 public SmallGirlHome(String name, char sex, int age)
 {
  super(name, sex, age);
  // TODO Auto-generated constructor stub
 }
 @Override
 public void intoHome() throws SexOutException,AgeOutException
 {
  
 }
 public void demo()
 {
  
 }

class AgeOutException extends Exception{
 public AgeOutException(String message){
  super(message);
 }
}
 class SexOutException extends Exception{
 public SexOutException(String message){
  super(message);
 }
 public void demo(){
  System.out.println("爱啦啦阿拉");
 }
}

到此这篇关于Java中try catch基本用法的文章就介绍到这了,更多相关Java中try catch用法内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Java/Android 相关文章推荐
解析Java中的static关键字
Jun 14 Java/Android
详解JAVA中的OPTIONAL
Jun 14 Java/Android
SpringBoot集成Redis,并自定义对象序列化操作
Jun 22 Java/Android
自从在 IDEA 中用了热部署神器 JRebel 之后,开发效率提升了 10(真棒)
Jun 26 Java/Android
elasticSearch-api的具体操作步骤讲解
Jun 28 Java/Android
Java获取e.printStackTrace()打印的信息方式
Aug 07 Java/Android
使用logback实现按自己的需求打印日志到自定义的文件里
Aug 30 Java/Android
MyBatis自定义SQL拦截器示例详解
Oct 24 Java/Android
Jpa Specification如何实现and和or同时使用查询
Nov 23 Java/Android
Java字符串逆序方法详情
Mar 21 Java/Android
Java实现添加条码或二维码到Word文档
Jun 01 Java/Android
HttpClient实现文件上传功能
Aug 14 Java/Android
SpringDataJPA实体类关系映射配置方式
Dec 06 #Java/Android
Java异常处理try catch的基本用法
Dec 06 #Java/Android
Mybatis是这样防止sql注入的
Dec 06 #Java/Android
Java tomcat手动配置servlet详解
Nov 27 #Java/Android
使用jpa之动态插入与修改(重写save)
Nov 23 #Java/Android
Jpa Specification如何实现and和or同时使用查询
Nov 23 #Java/Android
解析mybatis-plus中的resultMap简单使用
Nov 23 #Java/Android
You might like
什么是短波收听SWL
2021/03/01 无线电
PHP+DBM的同学录程序(2)
2006/10/09 PHP
PHP管理内存函数 memory_get_usage()使用介绍
2012/09/23 PHP
php动态添加url查询参数的方法
2015/04/14 PHP
xml和web特殊字符
2009/04/28 Javascript
javascript 写类方式之八
2009/07/05 Javascript
JQuery 学习笔记 选择器之六
2009/07/23 Javascript
一个CSS+jQuery实现的放大缩小动画效果
2014/02/19 Javascript
js实现分享到随页面滚动而滑动效果的方法
2015/04/10 Javascript
jquery实现的用户注册表单提示操作效果代码分享
2015/08/28 Javascript
Bootstrap与KnockoutJs相结合实现分页效果实例详解
2016/05/03 Javascript
jquery 判断div show的状态实例
2016/12/03 Javascript
JavaScript中最常用的10种代码简写技巧总结
2017/06/28 Javascript
微信小程序调用摄像头隐藏式拍照功能
2018/08/22 Javascript
微信小程序实现tab左右切换效果
2020/11/15 Javascript
Vue刷新修改页面中数据的方法
2018/09/16 Javascript
vue+element tabs选项卡分页效果
2020/06/29 Javascript
easyUI 实现的后台分页与前台显示功能示例
2020/06/01 Javascript
Python字符串和文件操作常用函数分析
2015/04/08 Python
Python多层嵌套list的递归处理方法(推荐)
2016/06/08 Python
详解Python:面向对象编程
2019/04/10 Python
Django集成搜索引擎Elasticserach的方法示例
2019/06/04 Python
浅谈Python类中的self到底是干啥的
2019/11/11 Python
python实现提取COCO,VOC数据集中特定的类
2020/03/10 Python
python实现吃苹果小游戏
2020/03/21 Python
Pytorch实现将模型的所有参数的梯度清0
2020/06/24 Python
button在IE6/7下的黑边去除方案
2012/12/24 HTML / CSS
英国领先的品牌珠宝和配件供应商:Acotis Jewellery
2018/03/07 全球购物
工程师求职简历的自我评价分享
2013/10/10 职场文书
教师节促销方案
2014/03/22 职场文书
学校地质灾害防治方案
2014/06/10 职场文书
升职自荐信怎么写
2015/03/05 职场文书
中秋节晚会开场白
2015/05/29 职场文书
Mac M1安装mnmp (Mac+Nginx+MySQL+PHP) 开发环境
2021/03/29 PHP
JS如何实现基于websocket的多端桥接平台
2021/05/14 Javascript
Spring Data JPA框架持久化存储数据到数据库
2022/04/28 Java/Android