用枚举来处理java自定义异常】的更多相关文章

在系统开发过程中,总少不免要自己处理一些异常信息,然后将异常信息变成友好的提示返回到客户端的这样一个过程,之前都是new一个自定义的异常,当然这个所谓的自定义异常也是继承RuntimeException的,但这样往往会造成异常信息说明不一致的情况,所以就想到了用枚举来解决的办法. 1.先创建一个接口,里面提供两个方法,一个是getErrorCode, 一个是getErrorMessage,如: public interface IErrorCode { public String getErro…
1.自定义异常 package com; public class ZeroException extends Exception { private static final long serialVersionUID = 1L; public ZeroException(){ super() ; } public ZeroException ( String string ) { super( string ) ; } } 2.异常捕捉 package com; public class T…
java 常见异常种类(Java Exception): 算术异常类:ArithmeticExecption 空指针异常类:NullPointerException 类型强制转换异常:ClassCastException 数组负下标异常:NegativeArrayException 数组下标越界异常:ArrayIndexOutOfBoundsException 违背安全原则异常:SecturityException 文件已结束异常:EOFException 文件未找到异常:FileNotFoun…
一.异常的分类: 1.编译时异常:编译时被检测的异常 (throw后,方法有能力处理就try-catch处理,没能力处理就必须throws).编译不通过,检查语法(其实就是throw和throws的配套使用). 2.运行时异常:编译时不被检查的异常(运行时异常.RuntimeException及其子类).编译通过. 各自的特点: >1.编译时异常 :  一旦 用throw 抛出异常,如果当前方法 可处理异常,那么直接在该方法内用try-catch 去处理.如果当前方法不具备处理该异常的能力,那么…
1.异常的分类 1. 非运行时异常(Checked Exception) Java中凡是继承自Exception但不是继承自RuntimeException的类都是非运行时异常. 2. 运行时异常(Runtime Exception/Unchecked Exception) RuntimeException类直接继承自Exception类,称为运行时异常. Java中所有的运行时异常都直接或间接的继承自RuntimeException. Java中所有的异常类都直接或间接的继承自Exceptio…
新建类CustomException继承 Exception /** * Create by on 2019-07-30 * 自定义类需要继承Exception * @author lsw */ public class CustomException extends Exception { public CustomException(){ } /** * super 是引用父类 通过super调用父类的方法 或者属性..., this是自己本身内部的 * 本实例的父类指 Exception…
学习目标: 掌握自定义异常类 例题: 需求:自定义异常类,简单判断是否注册成功 代码如下: RegisterException类: /** * @author YanYang * @projectName day02 * @description: 自定义异常类,简单判断是否注册成功 * @date 2021/3/29 17:25 */ public class RegisterException extends RuntimeException{ // 自定义输出的异常信息 private S…
创建自定义异常是为了表示应用程序的一些错误类型,为代码可能发生的一个或多个问题提供新含义. 可区分代码运行时可能出现的相似问题的一个或多个错误,或给出应用程序中一组错误的特定含义. //自定义异常类需要继承Exception public class MyselfException extends Exception { private int detail;    public MyselfException(int index){        detail=index;    }     …
用户可以根据自己的需要定义自己的异常类,定义异常类只需要继承Exception类即可 //================================================= // File Name : MyException_demo //------------------------------------------------------------------------------ // Author : Common // 类名:MyException // 属性…
自定义异常类不难,但下面这个方法,它的核心是异常拦截器类. 就算是在分布式系统间进行传递也可以,只要最顶层的服务有这个异常拦截器类(下例是在 springboot 项目中) 1.自定义异常类,继承自 RuntimeException,参数只有一个异常错误码 public class BingException extends RuntimeException { private final int code; public BingException(int code) { this.code…
编写一个计算N个学生分数平均分的程序.程序应该提示用户输入N的值,如何必须输入所有N个学生分数.如果用户输入的分数是一个负数,则应该抛出一个异常并捕获,提示“分数必须是正数或者0”.并提示用户再次输入该分数. import java.util.Scanner; public class TestInputScore { public static void main(String[] args) { @SuppressWarnings("resource") Scanner input…
写一个方法void isTriangle(int a,int b,int c),判断三个参数是否能构成一个三角形, 如果不能则抛出异常IllegalArgumentException,显示异常信息 “a,b,c不能构成三角形”,如果可以构成则显示三角形三个边长,在主方法中得到命令行输入的三个整数, 调用此方法,并捕获异常. import java.util.Scanner; public class TestTriangle { public static void main(String[]…
类1:public class LogicException extends RuntimeException {    //业务逻辑异常    /**     *      * @param message 异常信息     */    public LogicException(String message) {        super(message);    }    /**     *      * @param message 异常信息     * @param cause  当前…
通常在开发过程中,会遇到很多异常,对于一些知道异常的原因,这时候想要返回给浏览器,就需要自定义系统的异常 1.Spring  注入异常处理类 <bean id ="commonExceptionHandler" class = "com..test.common.exception.handler.CommonExceptionHandler"> 2.注入的异常处理类,主要是重写resolveException方法 import java.io.IOEx…
一.自定义异常类 我们知道所有的异常都是Exception,所以我们需要自定义异常只需要继承那个Exception类就可以了.下面我们自定义一个异常类,代码如下: /** * 自定义异常, */ //继承 Exception public class MyException extends Exception{ public MyException(String message){ //出现异常打印的语句 super(message); } } 二.设计方法,抛出异常 下面我们可以设计一个方法,…
package day162020072701.day1601; /** * @author liuwenlong * @create 2020-07-27 09:25:44 */ @SuppressWarnings("all") public class Human { private String name; private char sex; private int age; public int getAge() { return age; } public void setA…
一.What is ... 异常处理就是容错处理机制.通过构造一个陷阱来捕获运行时的可预见错误,经对该错误进行适当处理后,让程序能继续运行不至于崩溃. 二.Who will ... 异常由系统环境引发,由开发者捕获,留待(后续)开发者或用户处理. 三.When do ... 编程时并不打算立即处理该错误: 四.Where do ... 可预见即将发生的错误:例如:准备向SDCard写入文件,但可能SDCard并未安装,即将导致文件存取错误. 五.How to ... 1.定义异常 异常类应该定义…
throw new Exception("上传的脚本类型不匹配,当前只支持类unix系列的远程扫描,请上传后缀名为 .sh .pl 的脚本文件"); 这样就可以了,结合配置的异常信息json化输出,会被封装在json里.…
1.泛型 与面向对象的多态性相类似,应用泛型可以提高程序的复用性.与多态性不同的是,应用泛型可以减少数据的类型转换,从而提高代码的运行效率.泛型实际上是通过给类或接口增加类型参数实现的.不带泛型的类的定义格式是: [类型修饰词列表] class 类名 [extends 父类名] [implements 接口名称列表] { 类体 } 如果需要将上面的类定义格式改为具有泛型特点的类定义格式,则只需要将其中紧接在关键字class之后的类名修改为: 类名 <类型参数> 或者是 类名 <类型参数1…
DK1.5引入了新的类型--枚举.在 Java 中它虽然算个"小"功能,却给我的开发带来了"大"方便. 用法一:常量 在JDK1.5 之前,我们定义常量都是: publicstaticfianl.... .现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法. public enum Color { RED, GREEN, BLANK, YELLOW } 用法二:switch JDK1.6之前的switch语句只支持int,cha…
DK1.5引入了新的类型——枚举.在 Java 中它虽然算个“小”功能,却给我的开发带来了“大”方便. 用法一:常量 在JDK1.5 之前,我们定义常量都是: publicstaticfianl.... .现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法. public enum Color { RED, GREEN, BLANK, YELLOW } 用法二:switch JDK1.6之前的switch语句只支持int,char,enum类型,使用枚举,能…
(转)原创地址:http://blog.lichengwu.cn/java/2011/09/26/the-usage-of-enum-in-java/ JDK1.5引入了新的类型--枚举.在 Java 中它虽然算个"小"功能,却给我的开发带来了"大"方便. 用法一:常量 在JDK1.5 之前,我们定义常量都是: publicstaticfianl.... .现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法. Java代码 pu…
  目录(?)[-] 用法一常量 用法二switch 用法三向枚举中添加新方法 用法四覆盖枚举的方法 用法五实现接口 用法六使用接口组织枚举 用法七关于枚举集合的使用   DK1.5引入了新的类型--枚举.在 Java 中它虽然算个"小"功能,却给我的开发带来了"大"方便. 在JDK1.5 之前,我们定义常量都是: public static fianl.... .现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法. Java代…
通过一段时间的项目实践,发现java中的枚举与.net中的枚举有很大的差别,初期造成了我对java中的枚举一些错误理解及部分有缺陷的应用,其实追其原因还是因为我会习惯性的认为java的枚举在作用以及定义上与.net应该是差不多的,毕竟两者都是高级语言,语言上也有很多相似之处.这就是老师傅常说的新手好教,老兵不好教的原因,新手脑子一片空白不会有任何干扰,老兵总会以自己曾经的某些经验与新知识做对比.     习惯性观点一:枚举的定义应该与.net相同,比如在.net中我们可以这样定义枚举. publ…
一.分析  常量的声明是每一个项目中不可或缺的,在Java1.5之前,我们只有两种方式的声明:类常量和接口常量.不过,在1.5版之后有了改进,即新增了一种常量声明方式,枚举常量.代码如下: enum Season{ Spring,Summer,Autumn,Winter; } 二.场景  那么枚举常量与我们的经常使用的类常量和静态常量比有什么优势呢?  1.枚举常量更简单  先把Season枚举翻译成接口,代码如下: interface Season{ int Sprint = 0; int S…
30:用enum代替int常量 当需要一组固定常量的时候,应该使用enum代替int常量,除了对于手机登资源有限的设备应该酌情考虑enum的性能弱势之外. 31:用实例域代替序数 应该给enum添加int域,而不是使用ordinal方法来导出与枚举关联的序数值.(几乎不应使用ordinal方法,除非在编写像EnumMap这样的基于枚举的通用数据结构) //WRONG public enum Fruit{ APPLE, PEAR, ORANGE; public int numberOfFruit(…
在实际编程中,往往存在着这样的“数据集”,它们的数值在程序中是稳定的,而且“数据集”中的元素是有限的.例如星期一到星期日七个数据元素组成了一周的“数据集”,春夏秋冬四个数据元素组成了四季的“数据集”.在Java中想表示这种数据集最容易想到的写法可能是这样,我们以表示一周五天的工作日来举例: Java代码 public class WeekDay {         public static final int MONDAY = 1;         public static final in…
/* * enum类型不允许继承 * 除了这一点,我们基本上可以将enum看作一个常规的类 * 我们可以添加自己的方法与属性,我们也可以覆盖其中的方法. * 不过一定要在enum实例序列的最后添加分号 */ enum Hot{ LITTLE("litele hot"), MEDIEM("mediem hot"), HOT("very hot"); /* * 添加自己的属性和方法 */ private String des; private Hot…
枚举主要用于枚举常量,下面举个简单的应用. 比如一个公司有如下几个部门: 研发部: 销售部: 财务部: (其他部门暂时不列举) 部门的某些信息相对固定,此时可以考虑使用枚举来说明: 枚举类 Depts.java package myEnum; public enum Depts {          FINACEDEPT("财务部","负责公司财务"),     DEVELOPDEPT("研发部","负责软件研发工作"),  …
Java1.5提供了关键字enum,能够通过该关键字方便得定义自己须要的枚举类型,比方 enum Season { SPRING, SUMMER, AUTUMN, WINTER } 就定义了一个季节枚举类型.在本例中,对于Season.SPRING这个对象,Season.SPRING.name()能够得到该对象的字符串,即"SPRING":反之,由Season.valueOf("SPRING")则能够得到该对象,即Season.SPRING.也就是说,使用name(…