需要导入一个mysql的驱动
Runtime Exception
运行时异常
- 类型转换异常
- 空指针异常 ————利用了Hashtable不能为空的原理。
- 文件找不到异常
- 类找不到异常
- 数组大小为负数异常
- 数组越界异常
- 同步修改异常
import java.io.FileInputStream;
import java.util.ArrayList;
import java.util.Hashtable;
import java.util.Iterator;
import java.util.Set;
class Animal {
}
/**
* 运行时异常: 类型转换异常 空指针异常 文件找不到异常 类找不到异常 数组大小为负数异常 数组越界异常 同步修改异常
*
* @author 邢质坦 2019年2月6日 下午8:21:02
*/
public class TestDemo {
public static void main(String[] args) {
// 类型转换异常——java.lang.ClassCastException
Object o = new TestDemo();
Animal animal = (Animal) o;
// 空指针异常——java.lang.NullPointerException
Hashtable<Long, String> hashtable = new Hashtable<Long, String>();
hashtable.put(null, null);
FileInputStream fileInputStream = null;
// 文件找不到异常——java.io.FileNotFoundException
/*
* File file = new File("xx.xx"); try { fileInputStream = new
* FileInputStream(file); } catch (FileNotFoundException e1) { // TODO
* Auto-generated catch block e1.printStackTrace(); }finally{
* if(null!=fileInputStream){ try { fileInputStream.close(); } catch
* (IOException e) { // TODO Auto-generated catch block
* e.printStackTrace(); } } }
*/
// 数组越界异常——java.lang.ArrayIndexOutOfBoundsException
int[] arr = { 1, 2, 3, 4, 5 };
// int j = arr[5];
// 类找不到异常
try {
// java.lang.ClassNotFoundException
// Class.forName("com");
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// 数组大小为负数异常
// java.lang.NegativeArraySizeException
// int[] a = new int[-1];
// 同步修改异常——java.util.ConcurrentModificationException
ArrayList<Integer> arrayList = new ArrayList<Integer>();
for (int i = 0; i < 10; i++) {
arrayList.add(i);
}
for (int x : arrayList) {
System.out.println(x);
// arrayList.remove(x);//java.util.ConcurrentModificationException
}
}
}