Java大全(下)

错误处理

错误处理(共5个)

关键字 意思 备注,常用      

catch 处理异常 1.try+catch

程序的流程是:运行到try块中,如果有异常抛出,则转到catch块去处理。然后执行catch块后面的语句

2.try+catch+finally

程序的流程是:运行到try块中,如果有异常抛出,则转到catch块,catch块执行完毕后,执行finally块的代码,再执行finally块后面的代码。

如果没有异常抛出,执行完try块,也要去执行finally块的代码。然后执行finally块后面的语句

3.try+finally

程序的流程是:运行到try块中,如果有异常抛出的话,程序转向执行finally块的代码。那末finally块后面的代码还会被执行吗?不会!因为你没有处理异常,所以遇到异常后,执行完finally后,方法就已抛出异常的方式退出了。

这种方式中要注意的是,由于你没有捕获异常,所以要在方法后面声明抛出异常

(来自网上的资料)      

try 捕获异常        

finally 有没有异常都执行        

throw 抛出一个异常对象 一些可以导致程序出问题的因素,比如书写错误,逻辑错误或者是api的应用错误等等. 为了防止程序的崩溃就要预先检测这些因素,所以java 使用了异常这个机制.

在java中异常是靠 "抛出" 也就是英语的"throw" 来使用的,意思是如果发现到什么异常的时候就把错误信息 "抛出"      

throws 声明一个异常可能被抛出 把异常交给他的上级管理,自己不进行异常处理      

 

(1) catch :用来在 try-catch 或 try-catch-finally 语句中定义异常处理块。 开始和结束标记 { 和 } 是 catch 子句语法的一部分,即使该子句只包含一个语句,也不能省略这两个标记。 每个 try 块都必须至少有一个 catch 或 finally 子句。 如果某个特定异常类未被任何 catch 子句处理,该异常将沿着调用栈递归地传播到下一个封闭 try 块。如果任何封闭 try 块都未捕获到异常,Java 解释器将退出,并显示错误消息和堆栈跟踪信息。

 

(2) try :用于包含可能引发异常的语句块。 每个 try 块都必须至少有一个 catch 或 finally 子句。 如果某个特定异常类未被任何 catch 子句处理,该异常将沿着调用栈递归地传播到下一个封闭 try 块。如果任何封闭 try 块都未捕获到异常,Java 解释器将退出,并显示错误消息和堆栈跟踪信息。

 

(3)finally:用在异常处理的最后一个语句块,无论是否产生异常都要被执行。finally是对异常处理的最佳补充使代码总要被执行,使用finally可以维护对象的内部状态,并可以清理非内存资源。

 

(4) throw :用于引发异常。 throw 语句将 java.lang.Throwable 作为参数。Throwable 在调用栈中向上传播,直到被适当的 catch 块捕获。 引发非 RuntimeException 异常的任何方法还必须在方法声明中使用 throws 修饰符来声明它引发的异常。

 

(5) throws :可以应用于方法,以便指出方法引发了特定类型的异常。 throws 关键字将逗号分隔的 java.lang.Throwables 列表作为参数。 引发非 RuntimeException 异常的任何方法还必须在方法声明中使用 throws 修饰符来声明它引发的异常。 要在 try-catch 块中包含带 throws 子句的方法的调用,必须提供该方法的调用者。

 

   throw是你执行的动作。比如你觉得可能有异常,那么就抱出去 如:

           String a; if(a == null),

            throw new exception("a为null");

           所以throw是一个抛出去的动作

   throws只用在一个方法的末端,表示这个方法体内部如果有异常,这抛给它的调用者。 如: public void add(int a, int b) throws Exception(); 这个方法表示,在执行这个方法的时候,可能产生一个异常,如果产生异常了,那么谁调用了这个方法,就抛给谁

 

 

 包相关

包的关键字(共2个)

关键字 意思 备注,常用

import 引入包的关键字 当使用某个包的一些类时,仅需类名 然后使用ctrl+shift+o或者选定类名(类或属性或方法)按住ctrl+单击 即可自动插入类所在的包。如:JFrame 快捷键之后自动加入

import javax.swing.JFrame;

package 定义包的关键字 将所有有关的类放在一个包类以便查找修改等。如:package javake.flycat.draw002;

 

1) import:使一个包中的一个或所有类在当前 Java 源文件中可见。可以不使用完全限定的类名来引用导入的类。 当多个包包含同名的类时,许多 Java 程序员只使用特定的 import 语句(没有“*”)来避免不确定性。

 

2) package:指定在 Java 源文件中声明的类所驻留的 Java 包。 package 语句(如果出现)必须是 Java 源文件中的第一个非注释性文本。 例:java.lang.Object。 如果 Java 源文件不包含 package 语句,在该文件中定义的类将位于“默认包”中。请注意,不能从非默认包中的类引用默认包中的类。

 

 

 基本类型

数据类型的关键字(共10个)

关键字 意思 备注,常用

byte 字节型 8bit

char 字符型 16bit

boolean 布尔型 --

short 短整型 16bit

int 整型 32bit

float 浮点型 32bit

long 长整型 64bit

double 双精度 64bit

void 无返回 public void A(){} 其他需要返回的经常与return连用

enum 枚举  

 

(1)byte: 是 Java 原始类型。byte 可存储在 [-128, 127] 范围以内的整数值。 Byte 类是 byte 原始类型的包装对象类。它定义代表此类型的值的范围的 MIN_VALUE 和 MAX_VALUE 常量。 Java 中的所有整数值都是 32 位的 int 值,除非值后面有 l 或 L(如 235L),这表示该值应解释为 long。

 

(2) char :是 Java 原始类型。char 变量可以存储一个 Unicode 字符。 可以使用下列 char 常量:\b - 空格, \f - 换页, \n - 换行, \r - 回车, \t - 水平制表符, \' - 单引号, \" - 双引号, \\ - 反斜杠, \xxx - 采用 xxx 编码的 Latin-1 字符。\x 和 \xx 均为合法形式,但可能引起混淆。 \uxxxx - 采用十六进制编码 xxxx 的 Unicode 字符。 Character 类包含一些可用来处理 char 变量的 static 方法,这些方法包括 isDigit()、isLetter()、isWhitespace() 和 toUpperCase()。 char 值没有符号。

 

(3) boolean :是 Java 原始类型。boolean 变量的值可以是 true 或 false。 boolean 变量只能以 true 或 false 作为值。boolean 不能与数字类型相互转换。 包含 boolean 操作数的表达式只能包含 boolean 操作数。 Boolean 类是 boolean 原始类型的包装对象类。

 

(4)short :是 Java 原始类型。short 变量可以存储 16 位带符号的整数。 Short 类是 short 原始类型的包装对象类。它定义代表此类型的值的范围的 MIN_VALUE 和 MAX_VALUE 常量。 Java 中的所有整数值都是 32 位的 int 值,除非值后面有 l 或 L(如 235L),这表示该值应解释为 long。

 

(5)int: 是 Java 原始类型。int 变量可以存储 32 位的整数值。 Integer 类是 int 原始类型的包装对象类。它定义代表此类型的值的范围的 MIN_VALUE 和 MAX_VALUE 常量。 Java 中的所有整数值都是 32 位的 int 值,除非值后面有 l 或 L(如 235L),这表示该值应解释为 long。

 

(6) float : 是 Java 原始类型。float 变量可以存储单精度浮点值。 使用此关键字时应遵循下列规则: Java 中的浮点文字始终默认为双精度。要指定单精度文字值,应在数值后加上 f 或 F,如 0.01f。 由于浮点数据类型是实际数值的近似值,因此,一般不要对浮点数值进行是否相等的比较。 Java 浮点数值可代表无穷大和 NaN(非数值)。Float 包装对象类用来定义常量 MIN_VALUE、MAX_VALUE、NEGATIVE_INFINITY、POSITIVE_INFINITY 和 NaN。

 

(7) long : Java 原始类型。long 变量可以存储 64 位的带符号整数。 Long 类是 long 原始类型的包装对象类。它定义代表此类型的值的范围的 MIN_VALUE 和 MAX_VALUE 常量。 Java 中的所有整数值都是 32 位的 int 值,除非值后面有 l 或 L(如 235L),这表示该值应解释为 long。

 

(8)double :是 Java 原始类型。double 变量可以存储双精度浮点值。 由于浮点数据类型是实际数值的近似值,因此,一般不要对浮点数值进行是否相等的比较。 Java 浮点数值可代表无穷大和 NaN(非数值)。Double 包装对象类用来定义常量 MIN_VALUE、MAX_VALUE、NEGATIVE_INFINITY、POSITIVE_INFINITY 和 NaN。

 

(9) void:表示 null 类型。 void 可以用作方法的返回类型,以指示该方法不返回值。

 

(10)enum:枚举类型,可以将一组具名的值的有限集合创建为一种新的类型,而这些具名的值可以作为常规的程序组件使用。

 

其他

包含(1个)

关键字 意思 备注,常用

assert 断言  

 

(1)assert:表示断言,在执行的时候默认不启动断言检查的(所有的断言语句都将忽略),如果要启动则需要用开关-enableassertions来开启,有两种方法:

1.assert:如果为true,则程序继续执行,如果为false,则程序抛出AssertionError并终止运行。

2.assert:<错误信息表达式> :如果为true,则程序继续执行,如果为false则程序抛出java.lang.AssertionError,并输入<错误信息表达式>

 

 

保留字

保留字共包含(两个)

 

(1)goto :但无任何作用。结构化程序设计完全不需要 goto 语句即可完成各种流程,而 goto 语句的使用往往会使程序的可读性降低,所以 Java 不允许 goto 跳转。

 

(2) const:是一个类型修饰符,使用const声明的对象不能更新。与final某些类似。

 

 

标志符

 

(1) null :表示无值。 将 null 赋给非原始变量相当于释放该变量先前所引用的对象。 不能将 null 赋给原始类型(byte、short、int、long、char、float、double、boolean)变量。

 

(2) true :表示 boolean 变量的两个合法值中的一个。

 

(3) false :代表 boolean 变量的两个合法值之一。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值