潭州Java中级班(day_13)-异常概述
异常
Throwable类是Java语言中所有错误Error和异常Exception的Throwable类
*
* Throwable:
* ----Error:错误的意思
* ----StackOverflowError:当堆栈溢出发生时抛出一个应用程序递归太深。
* ----NoClassDefFoundError:找不到或无法加载主类
* ----NoSuchMethodError:没有此方法错误
* ----OutOfMemoryError :内存溢出错误
*
* ----Exception:异常的意思
* ----NullPointerException: 空指针异常
* ----ArrayIndexOutOfBoundsException:数组下标/角标越界异常
* ----AritchmeticException:算术异常
* ----ClassCastException: 造型异常 类转换异常
*
*/
package exception; /** * 这个类是讲述异常的概述 * @ClassName: Demo3Throwable.java * @Description: TODO * @author Jim老师 * @version jdk8.0 * @Date 2018年9月7日 下午9:06:00 无敌是多么的寂寞 男人不能说不行,不行也得行 */ /* * Throwable类是Java语言中所有错误Error和异常Exception的Throwable类 * * Throwable: * ----Error:错误的意思 * ----StackOverflowError:当堆栈溢出发生时抛出一个应用程序递归太深。 * ----NoClassDefFoundError:找不到或无法加载主类 * ----NoSuchMethodError:没有此方法错误 * ----OutOfMemoryError :内存溢出错误 * * ----Exception:异常的意思 * ----NullPointerException: 空指针异常 * ----ArrayIndexOutOfBoundsException:数组下标/角标越界异常 * ----AritchmeticException:算术异常 * ----ClassCastException: 造型异常 类转换异常 * */ public class Demo3Throwable { public static void main(String[] args) { // show(); // show2(); int[] in=null; // int num=in.length; //1:存了一个元素 0:代表一个元素都没有存 String[] str=new String[0]; // System.out.println(str[0]); // int i=1/0; Animal animal=new Cat(); //强转:把猫变成小鸟 // Bird bird=(Bird) animal; } static int num=0; public static void show2(){ byte[] byte1=new byte[1024*1024*1024]; num++; if(num==5){ return ; } show2(); } public static void show(){ show(); } } class Animal{} class Cat extends Animal {} class Bird extends Animal{} /* * Exception in thread "main" java.lang.ArithmeticException: / by zero 异常 在 main线程中 java文件夹里面lang文件夹里面的算术异常类 除以0了 at exception.Demo3Throwable.main(Demo3Throwable.java:41) 在exception文件夹中Demo3Throwable类中main函数中第41 */
Exception:
* -----编译时异常:编译的时候就会有异常,除了运行时异常,就是它了。
* 它必须处理才能运行:处理有两种方式(一种抛出异常,二种抓)
* ----FileNotFoundException: 找不到文件异常
* ----InterruptedException: 中断异常
*
* -----运行时异常RuntimeException:RuntimeException及其子类都是运行时异常
* 可以编译通过,能运行,运行的时候报异常,不需要处理可以运行,但是有异常还是有异常
* -------ArithmeticException : 算术异常
* -------NullPointerException: 空指针异常
* -------ArrayIndexOutOfBoundsException:数组下标越界异常。
* -------ClassCastException : 造型异常
*
package exception; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; /** * 这个类是讲述异常的分类 * @ClassName: Demo4RuntimeException.java * @Description: TODO * @author Jim老师 * @version jdk8.0 * @Date 2018年9月7日 下午10:09:16 无敌是多么的寂寞 男人不能说不行,不行也得行 */ /* * Exception: * -----编译时异常:编译的时候就会有异常,除了运行时异常,就是它了。 * 它必须处理才能运行:处理有两种方式(一种抛出异常,二种抓) * ----FileNotFoundException: 找不到文件异常 * ----InterruptedException: 中断异常 * * -----运行时异常RuntimeException:RuntimeException及其子类都是运行时异常 * 可以编译通过,能运行,运行的时候报异常,不需要处理可以运行,但是有异常还是有异常 * -------ArithmeticException : 算术异常 * -------NullPointerException: 空指针异常 * -------ArrayIndexOutOfBoundsException:数组下标越界异常。 * -------ClassCastException : 造型异常 * */ public class Demo4RuntimeException { public static void main(String[] args) throws FileNotFoundException, InterruptedException { // test1(); // System.out.println("game over!"); // // test2(); test3(); } public static void test3(){ // int i=10/0; String[] strings=null; // System.out.println(strings.length); int[] in=new int[0]; //0:一个都没有 但是有堆 // System.out.println(in[0]); //访问第一个元素 } public static void test1() throws FileNotFoundException { //字符输出流:读取文件 FileReader fileReader=new FileReader("test1.txt"); } public static void test2() throws InterruptedException{ Thread.sleep(100); //暂停100毫秒 1秒=1000毫秒 } }
package exception; /** * 这个类是讲述异常的概述 * @ClassName:
Demo3Throwable.java * @Description: TODO * @author
Jim老师 * @version jdk8.0
* @Date 2018年9月7日 下午9:06:00
无敌是多么的寂寞
男人不能说不行,不行也得行
*//* * Throwable类是Java语言中所有错误Error和异常Exception的Throwable类 *
* Throwable: * ----Error:错误的意思 *
----StackOverflowError:当堆栈溢出发生时抛出一个应用程序递归太深。 *
----NoClassDefFoundError:找不到或无法加载主类 *
----NoSuchMethodError:没有此方法错误 *
----OutOfMemoryError :内存溢出错误 * *
----Exception:异常的意思 *
----NullPointerException: 空指针异常 *
----ArrayIndexOutOfBoundsException:数组下标/角标越界异常 *
----AritchmeticException:算术异常 *
----ClassCastException: 造型异常
类转换异常 * */public class Demo3Throwable {
public static void main(String[] args) {//
show();//
show2();
int[] in=null;//
int num=in.length;
//1:存了一个元素 0:代表一个元素都没有存
String[] str=new String[0];//
System.out.println(str[0]); //
int i=1/0;
Animal animal=new Cat(); //强转:把猫变成小鸟//
Bird bird=(Bird) animal; }
static int num=0;
public static void show2(){
byte[] byte1=new byte[1024*1024*1024];
num++;
if(num==5){
return ; }
show2(); }
public static void show(){
show(); }}
class Animal{}
class Cat extends Animal {}
class Bird extends Animal{}/* *
Exception in thread "main" java.lang.ArithmeticException: / by zero 异常
在 main线程中 java文件夹里面lang文件夹里面的算术异常类
除以0了at exception.Demo3Throwable.main(Demo3Throwable.java:41)在exception文件夹中Demo3Throwable类中main函数中第41 */
浙公网安备 33010602011771号