JAVA会将所有的错误封装成为一个对象,其根本父类为Throwable。

Throwable有两个子类:Error和Exception。

一个Error对象表示一个程序错误,指的是底层的、低级的、不可恢复的严重错误。此时程序一定会退出,因为已经失去了运行所必须的物理环境。

对于Error错误我们无法进行处理,因为我们是通过程序来应对错误,可是程序已经退出了。

我们可以处理的Throwable对象中只有Exception对象(例外/异常)。

Exception有两个子类:Runtime exception(未检查异常)

非Runtime exception(已检查异常)

(注意:无论是未检查异常还是已检查异常在编译的时候都不会被发现,在编译的过程中检查的是程序的语法错误,而异常是一个运行时程序出错的概念。)

在Exception中,所有的非未检查异常都是已检查异常,没有另外的异常!!

未检查异常是因为程序员没有进行必要的检查,因为他的疏忽和错误而引起的异常。一定是属于虚拟机内部的异常(比如空指针)。

 package TomText;
//测试对象间的赋值。
public class TomText_46 {
int i;
public static void main (String [ ] a){
TomText_46 n1=new TomText_46( );
TomText_46 n2=new TomText_46( );
n1.i=9;
n2.i=47;
System.out.println("n1.i="+n1.i+"\t\t"+"n2.i="+n2.i);
n1=n2;
System.out.println("n1.i="+n1.i+"\t\t"+"n2.i="+n2.i);
n1.i=27;
System.out.println("n1.i="+n1.i+"\t\t"+"n2.i="+n2.i);
} }

JAVA会将所有的错误封装成为一个对象,其根本父类为Throwable的更多相关文章

  1. 深入探讨Java中的异常与错误处理

    Java中的异常处理机制已经比较成熟,我们的Java程序到处充满了异常的可能,如果对这些异常不做预先的处理,那么将来程序崩溃就无从调试,很难找到异常所在的位置.本文将探讨一下Java中异常与错误的处理 ...

  2. Java HttpClient伪造请求之简易封装满足HTTP以及HTTPS请求

    HttpClient简介 HTTP 协议可能是现在 Internet 上使用得最多.最重要的协议了,越来越多的 Java 应用程序需要直接通过 HTTP 协议来访问网络资源.虽然在 JDK 的 jav ...

  3. Java代码常见的十种错误

    每一个程序员在编写代码的过程中都免不了出现错误或是小的失误,这些小的错误和失误往往使得程序员还得返工.那么,如何才能尽量避免这些错误的发生呢?笔者总结只有在日常的编写代码中总结出经验,在这篇文章中,笔 ...

  4. Java程序员注意——审查Java代码的六种常见错误

    代码审查是消灭Bug最重要的方法之一,这些审查在大多数时候都特别奏效.由于代码审查本身所针对的对象,就是俯瞰整个代码在测试过程中的问题和Bug.并且,代码审查对消除一些特别细节的错误大有裨益,尤其是那 ...

  5. [论文笔记] 一种Java遗留系统服务化切分和封装方法 (计算机学报, 2009)

    李翔,怀进鹏,曾晋,高鹏. 一种Java遗留系统服务化切分和封装方法. 计算机学报, 32(9), 2009, p1084-1815 (gs:5) 1. 本文研究从Java遗留系统中切分并封装出Web ...

  6. Java基础-四要素之一《封装》

    封装从字面上来理解就是包装的意思,专业点就是信息隐藏,是指利用抽象数据类型将数据和基于数据的操作封装在一起,使其构成一个不可分割的独立实体,数据被保护在抽象数据类型的内部,尽可能地隐藏内部的细节,只保 ...

  7. Java学习-029-JSON 之三 -- 模仿 cssSelector 封装读取 JSON 数据方法

    前文简单介绍了如何通过 json-20141113.jar 提供的功能获取 JSON 的数据,敬请参阅:Java学习-028-JSON 之二 -- 数据读取. 了解学习过 JQuery 的朋友都知道, ...

  8. java.io.EOFException java.io.ObjectInputStream$PeekInputStream.readFully 错误

    Tomcat 启动时 java.io.EOFException at java.io.ObjectInputStream$PeekInputStream.readFully 错误 这 个错误 碰到好几 ...

  9. java JNI 调试出现的错误

    java JNI 调试出现的错误 ERROR: JDWP Unable to get JNI 1.2 environment, jvm->GetEnv() return code = -2JDW ...

随机推荐

  1. 算法笔记_020:深度优先查找(Java)

    目录 1 问题描述 2 解决方案 2.1 蛮力法 1 问题描述 深度优先查找(depth-first search,DFS)可以从任意顶点开始访问图的顶点,然后把该顶点标记为已访问.在每次迭代的时候, ...

  2. setup factory 打包VB 工程

    setup factory 使用起来很简单你可以如下:1.你把你刚编译出来的exe和相关的资源文件复制到某一空目录下.把exe文件添加到setup factory里之后,在列表里右键,属性里面可以设置 ...

  3. ES6 import 循环加载

    1.示例 (1)a.js import {bar} from './b'; console.log('a.mjs'); console.log(bar); export let foo = 'foo' ...

  4. Spring中bean的生命周期!

    Spring 中bean 的生命周期短暂吗? 在spring中,从BeanFactory或ApplicationContext取得的实例为Singleton,也就是预设为每一个Bean的别名只能维持一 ...

  5. Spring+Struts+Hibernate 简介(转)

    http://blog.csdn.net/slnqnd/article/details/1772910/ Struts2.0 +Hibernate 3.2 +Spring 2.0 一.         ...

  6. gcc/g++ 命令的常用选项

    gcc/g++ 命令的常用选项使用g++编译CPP文件如果用gcc编译C++源文件时,加以下选项:-lstdc++,否则使用了C++操作的文件编译会出错.假如在程序中用到new delete操作,而不 ...

  7. [Verilog]随意整数(奇数,偶数)分频器设计, 50%占空比

    module div_clk(clk_in, divisor, clk_out); input clk_in; input divisor; output clk_out; reg clk_out = ...

  8. 安卓入门 使用android创建一个项目 从启动activity中响应按钮事件 启动另一个activity 并传递参数

    启动android studio创建一个新项目 public void sendMessage(View view){ Intent intent=new Intent(this,DispalyMes ...

  9. C#日期格式化英文月份 VS改大小写的快捷键

    DateTime.Now.ToString("MMM yyyyy",CultureInfo.CreateSpecificCulture("en-GB")) ;  ...

  10. memset 与 memcpy

    1. memset 需要的头文件 在C中 <string.h> 在C++中 <cstring> 原型: void *memset(void *s, int ch, size_t ...