`

java之运行时异常与编译时异常区别

    博客分类:
  • java
阅读更多
JAVA中用2种方法处理异常:
    1.在发生异常的地方直接处理;
    2.将异常抛给调用者,让调用者处理。

JAVA异常可分为3种:
  (1)编译时异常:java.lang.Exception
  (2)运行期异常:java.lang.RuntimeException
  (3)错误:java.lang.Error

java.lang.Exception和java.lang.Error继承自java.lang.Throwable;
java.lang.RuntimeException继承自java.lang.Exception.


编译时异常: 程序正确,但因为外在的环境条件不满足引发。例如:用户错误及I/O问题----程序试图打开一个并不存在的远程Socket端口。这不是程序本身的逻辑错误,而很可能是远程机器名字错误(用户拼写错误)。对商用软件系统,程序开发者必须考虑并处理这个问题。JAVA编译器强制要求处理这类异常,如果不捕获这类异常,程序将不能被编译。

运行期异常: 这意味着程序存在bug,如数组越界,0被除,入参不满足规范.....这类异常需要更改程序来避免,JAVA编译器强制要求处理这类异常。

错误: 一般很少见,也很难通过程序解决。它可能源于程序的bug,但一般更可能源于环境问题,如内存耗尽。错误在程序中无须处理,而有运行环境处理。
分享到:
评论

相关推荐

    java 自定义异常-编译异常和运行异常

    java 自定义异常--编译异常和运行异常2种;Java异常机制可以保证程序更安全和更健壮。虽说Java类库已经提供很多可以直接处理异常的类,但是有时候为了更加地捕获和处理异常以呈现更好的用户体验,需要开发者自定义...

    JAVA范例 四)异常处理---编译时异常、运行时异常

    本文将深入探讨"JAVA范例 四)异常处理---编译时异常、运行时异常"这个主题,结合标签"源码"和"工具",我们可以理解这与实际编程实践和可能使用的开发工具如Struts2框架相关。 首先,我们来看编译时异常。编译时...

    Java异常处理机制的静态编译实现与优化

    异常处理机制通常由编译器和异常处理机制的运行时支持函数共同实现,因此,如何正确高效地实现异常处理机制是设计编译器和异常处理运行时支持函数所要关心的重要问题。 Java程序的编译运行有两种方式:在JVM上动态编译...

    深入理解java异常(异常中的Error+异常中的Exception+检查异常+运行时异常+异常处理+throws关键字等)

    Java 异常机制包括 Error、Exception、检查异常、运行时异常、异常处理和 throws 关键字等几个方面。 Error 是 Java 异常机制中的基类,表示编译时或者系统错误,例如虚拟机相关的错误、系统崩溃等。Error 无法恢复...

    java 异常详解,java异常分类,创建自己的异常

    1. 运行异常:运行异常是指 Java 程序在运行时发现的由 Java 解释抛出的各种异常,包括算术异常、下标异常等等。 2. 非运行时异常:非运行时异常是由编译器在编译时检测是否会发生在方法的执行过程中的异常。 创建...

    编译时出现java.lang.OutOfMemoryError Java heap space异常

    ### 编译时出现java.lang.OutOfMemoryError Java heap space异常 #### 一、问题概述 在进行Java项目编译的过程中,可能会遇到`java.lang.OutOfMemoryError: Java heap space`这种异常。这类异常通常表明Java虚拟机...

    计算机后端-Java-Java核心基础-第17章 异常处理 12. 编译时异常和运行时异常的不同处理.avi

    计算机后端-Java-Java核心基础-第17章 异常处理 12. 编译时异常和运行时异常的不同处

    java所有运行时异常以及错误.

    这里我们将详细讨论Java中的运行时异常和错误。 首先,运行时异常是程序在执行过程中可以预见的异常,它们属于`java.lang.Throwable`的子类,并且通常可以通过代码进行预防或捕获。下面列举了一些常见的运行时异常...

    java applet运行出现异常

    6. **环境配置**:用户的JRE(Java运行环境)版本可能与Applet编译的JDK版本不匹配,也可能缺少必需的库或组件。 7. **网络问题**:如果Applet依赖于远程服务器上的资源,网络连接问题可能导致加载失败。 解决这些...

    java异常继承何类,运行时异常与一般异常的区别(详解)

    Java 异常继承及运行时异常与一般异常的区别 Java 异常继承结构中, Throwable 是所有异常的根,下面有两个重要的子类:Error 和 Exception。Error 表示程序无法处理的错误,表示运行应用程序中较严重问题。...

    java class反编译工具

    Java Class反编译工具是程序员在处理已编译的字节码文件时不可或缺的辅助工具。这类工具的主要功能是将`.class`文件转换回可读性强的`.java`源代码,帮助开发者理解或修改已有的Java程序,尤其在没有源代码的情况下...

    java学习之Java异常.ppt

    Java异常是程序在运行时遇到的问题,例如数组越界、空指针异常、文件未找到等,这些问题会导致程序无法继续执行。异常处理的目的是增强程序的健壮性,使程序在遇到问题时不会突然崩溃,而是有组织地处理错误。 首先...

    Java异常处理-异常处理概述与常见异常举例

    Java异常处理是编程中必不可少的部分,用于处理程序运行时可能出现的错误情况。异常是程序执行过程中遇到的非正常状态,可能导致程序中断。Java提供了强大的异常处理机制来确保程序的健壮性和稳定性。 1- 什么是...

    java常见的异常

    检查性异常是那些在编译时必须处理的异常,如`IOException`,而运行时异常则是在程序运行期间可能出现的问题,如`NullPointerException`。了解和正确处理这些异常对于编写健壮、可靠的Java代码至关重要。 1. **...

    java中常见的异常类型

    #### 编译时异常与运行时异常的区别 - **编译时异常**:这类异常由Java编译器在编译阶段检测到,并要求程序员必须处理这些异常。如果不处理,编译器将拒绝编译。例如,`IOException`就是一个典型的编译时异常。 - *...

    java手动编译步骤原理

    Java程序的开发与执行涉及到一系列步骤,从编写源代码到运行程序,这中间的编译过程对于理解Java平台的工作机制至关重要。以下是一个详细的手动编译和运行Java程序的步骤: 1. **创建源代码文件**: 首先,我们...

    java试验报告之异常处理程序设计

    这些异常都是运行时异常,它们在编译时不需要强制处理,但最好在运行时被捕获以防止程序意外终止。 **异常处理程序设计** 在Java中,`try-catch`块用于捕获和处理异常。在`try`块内,可能抛出异常的代码会被执行。...

    java 异常框架CODE

    Java异常框架是Java编程语言中处理程序运行时错误和异常的核心机制。在Java中,异常是一种特殊的对象,用于表示程序运行过程中的不正常状态。Java的异常处理模型基于\"异常处理块\",包括try、catch、finally和throw...

    C++ Java异常处理比较

    语法错误在编译阶段就能发现,而运行时错误(如空指针异常、数组越界、除数为零)和逻辑错误(预期结果与实际结果不符)则需要在程序执行期间处理。Java的异常处理机制专注于处理运行时错误,通过面向对象的方式来...

Global site tag (gtag.js) - Google Analytics