`
qdpurple
  • 浏览: 276739 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

平台异常1

阅读更多

学习java,离不开给Exception打交道,现通过总结简单问题来学习一下

1.异常分类

异常分为:运行异常/非运行异常
java编译器要求必须对非运行异常必须进行处理(捕捉或抛出),对运行时异常可以不处理.
(1)非运行异常(编译不能通过提示:Unhandled exception type...):
如文件读写时必须进行IOExecption的捕捉.
(2)RuntimeException(所有运行异常的父类)代表运行时由JAVA虚 拟机生成的异常,原因是编程错误。如:
 IndexOutOfBoundsException/ NullPointerException/ IllegalArgumentException

 

2. 什么时候进行try/catch,什么时候进行throws?

平台异常2 - try/catch or throws

 

3.什么时候自定义异常?

总结:为了给软件试用者提供较规范的错误信息(如 errorCode +  errorMessage), 使用自定义异常,

这样比单独每个错误直接记录log日志更加简明,便于后期维护.


4.自定义异常的使用?

首先定义的异常需 extends  Throwable 类,


5.平台的自定义异常?

 

DAOException.java

P2PException.java

PlatformConnectLogOnException.java

PlatformDeliveryException.java

PlatformDownloadException.java

PlatformException.java

PlatformSFTPException.java

PlatformTransformException.java

SyncException.java

MessageException.java

NoAuthenticatedException.java

NoAuthorizedException.java

.....

平台在各个模块基本都定义了本模块的异常, 异常的发生 将会使程序不能正确运行,使用这些自定义异常能使客户从日志中清楚知道 异常代码+异常信息, 使得我们的后期维护具有较高效率.

在以后开发中,当遇到这些情况时,已尝试使用自定义异常.

6.常见的类
6.1 java.lang.Throwable

 所有Error/Exception 的父类; 定义了常见的构造方法如 Throwable(String message, Throwable cause); 方法 如printStackTrace()等

 

6.2 Exception

 

所有异常的父类

 

 

7.问题:

(1) 每个自定义异常类都有private static final long serialVersionUID = -7564015249480613950L;

这个value是怎么得来的?

为什么可以重复? 见下1L

1.2 异常中定义了大量ErrorCode ,这些Errorcode值怎么确定的?

如PlatformConnectLogOnException.java中 从:10001开始 ,  serial~Id:  -3966244863223955260L

PlatformDeliveryException.java中 从40001开头      1L

PlatformDownloadException.java从 20001开头     -5174978579291077870L

PlatformTransformException.java从30001开头      1L

通过分析知:每类异常都以不同的万位数开头, 这样可以方便从日志中知道是哪个功能的异常.

 

(2) 在com.al9202.platform.common.exception包中定义了4个异常类和一个抽象异常类PlatformException.java

这些子类异常都重写了logErrorMessage()方法,但在抛出时,通过构造方法完成调用,并没有调用 logErrorMessage()方法?


:在抛出时未调用,在捕获时,调用. 解决.
分享到:
评论

相关推荐

    云计算平台异常行为检测系统的设计与实现.pdf

    1. 云计算平台异常行为检测: 云计算环境下,虚拟机内部的安全威胁,如蠕虫病毒和地址解析协议(ARP)广播攻击等问题,是云计算安全的重要组成部分。传统网络安全设备在应对这类内部威胁时往往无法有效检测到异常...

    如何基于Flink+TensorFlow打造实时智能异常检测平台

    本文整理自携程实时计算负责人潘国庆在QCon全球软件开发大会(北京站)2019的演讲,他介绍了携程如何基于Flink与TensorFlow构建实时智能异常检测平台,以解决规则告警系统准确率低、时效性低、规则配置复杂与耗费人力...

    云计算Hadoop平台的异常数据检测算法研究.pdf

    然而,在处理海量数据时,Hadoop平台常会遇到异常数据的挑战,这包括数据逻辑错误、数据链完整性缺失以及数据失效等问题。这些问题的出现严重干扰了云计算平台的数据运算准确性。 面对这些挑战,研究者们提出了针对...

    opencv,摄像头清晰度检测,亮度异常检测系统,mfc展示平台

    OpenCV、摄像头清晰度检测、亮度异常检测系统、MFC展示平台 摘要:本系统利用OpenCV库进行摄像头清晰度检测和亮度异常检测,并使用MFC(Microsoft Foundation Classes)作为展示平台。该系统可以实时检测摄像头的...

    android开发,异常处理,捕获异常上传到bugly,捕获异常库module

    1. 自定义的异常处理器:继承自UncaughtExceptionHandler,捕获未被捕获的异常。 2. 异常日志记录:将捕获的异常信息保存到本地,便于后续分析。 3. 异常上报:封装Bugly的API,将异常信息发送到Bugly服务器。 4. ...

    JCVM异常处理机制

    值得注意的是,为了节省内存资源,Java卡平台允许直接调用JCVM内部异常类的静态方法`throwIt()`来抛出异常。另外,虽然`Throwable`类的直接子类不包括`Error`,但JCVM必须支持所有Java平台中的`Error`类(除了`...

    c/vc++/MFC异常处理/结构化异常处理 浅析

    结构化异常处理(Structured Exception Handling,SEH)是Windows平台特有的异常处理机制,它与C++的异常处理机制不同。SEH使用__try、__except和__finally关键字,能够捕获和处理系统级异常,如硬件故障、访问违规...

    ADS异常处理.pptADS异常处理.pptADS异常处理.ppt

    异常处理是保证系统稳定性和可靠性的关键环节,理解并熟练掌握这些概念对于任何ARM平台的开发者都至关重要。正确处理异常可以提高系统的响应速度,防止数据丢失,确保服务的连续性,从而提升整个系统的性能和用户...

    ActionScript3异常处理

    ActionScript3(AS3),作为Adobe Flash平台的主要编程语言之一,提供了强大的异常处理机制,使得开发者能够有效地捕获并响应程序运行时可能出现的各种错误。本文将深入探讨AS3中的异常处理技术,包括异常的概念、...

    Java平台统一异常框架归类.pdf

    Java平台上的异常处理是软件开发中的关键部分,它确保了程序的健壮性和稳定性。本文主要探讨了Java异常框架的设计和实现,特别是针对业务平台的场景。异常框架分为两大类:程序异常和业务异常。 首先,Java异常框架...

    程序崩溃异常捕获

    在Android或iOS等移动平台,可以使用系统提供的异常处理接口,如Android的UncaughtExceptionHandler或者iOS的NSSetUncaughtExceptionHandler,来设置全局的未捕获异常处理器。在Java或C#等语言中,可以使用try-catch...

    ARM处理器异常处理步骤

    ARM处理器异常处理是指ARM微处理器对各种异常情况作出响应和处理的过程。异常指的是处理器在正常执行程序时遇到的特殊...对于开发者而言,深入理解ARM处理器的异常处理机制对于编写高效、稳定的ARM平台软件至关重要。

    异常检测常用的一些数据集

    这些数据集为研究者提供了一个丰富的平台,以开发和测试新的异常检测算法。通过无监督学习,可以发现数据中的异常模式,而无需依赖预先标注的类别信息。在实际应用中,这些技术可以帮助企业和机构快速识别并应对各种...

    实时智能异常检测平台的算法及工程实现-携程陈剑明.pdf

    ### 实时智能异常检测平台的算法及工程实现 #### 一、引言 随着大数据时代的到来,企业对数据监控的需求日益增长。为了更好地应对业务挑战,实时智能异常检测平台成为了关键的技术工具之一。该平台旨在通过算法和...

    Native异常的处理

    1. **JNI基础知识**:JNI是Java平台的一部分,它提供了一种标准方式让Java代码和其他语言写的代码进行交互。通过JNI,开发者可以编写本地方法(native methods),这些方法在Java源代码中声明,但在C++或C实现,然后...

    Python-Curve一个用于时间序列数据异常检测的综合实验平台

    Curve:时序数据异常标记工具。Curve是由百度和清华大学联合推出的一款开源工具,用于帮助开发者标记时序数据中的异常。标签数据(也就是真实有效值)对于评估时序数据异常检测方法非常有必要。否则,我们无法轻松...

    行业分类-设备装置-云平台异常事件的监控及自动处理的方法和框架.zip

    本文将深入探讨“行业分类-设备装置-云平台异常事件的监控及自动处理的方法和框架”,旨在提供一套有效策略来预防、检测和应对云环境中的异常事件。 一、云平台异常事件的定义与类型 云平台异常事件通常是指在云...

    面向异构化平台的轻量级程序异常检测方法.docx

    1. 异构化平台与异常检测 异构化平台是指由不同硬件架构、操作系统或编程语言构建的计算环境。由于这些平台的特性差异,同一程序在不同平台上的运行表现可能会有所不同。研究表明,跨平台的恶意攻击更具挑战性,这...

    基于Linux平台的流量统计与异常检测系统的设计与实现.pdf

    在网络安全领域,流量统计与异常检测是至关重要的技术,尤其在基于Linux平台的环境中。Linux操作系统因其开源、稳定和高效的特点,成为了构建此类系统的理想选择。本文将围绕基于Linux的流量统计与异常检测系统的...

    vC 堆栈 异常处理

    在vC++环境中,异常处理机制与标准C++略有不同,因为它集成了Windows API,这使得vC++的异常处理具有了更多与平台相关的特性。例如,vC++支持结构化异常处理(Structured Exception Handling, SEM),这是Windows...

Global site tag (gtag.js) - Google Analytics