1、JAVA的异常都继承自Throwable类,Throwable类又包括两大类,Error类和Exception类,Error是指那些系统本身的错误,不是由于代码引起,可能是因为Java虚拟机内部引起,这类错误一般不用考虑太多,Exception,又包括两在类,检查异常(IOException异常)和运行时异常,Error和Runtime又统称为非检查异常,Java要求软件开发人员强制捕获或抛出各类检查时异常,否则会编译不通过,运行时异常可不处理,常见的运行时异常有:空指针异常、数组越界异常等。当然,除了这些,开发人员也可以自定义异常。
2、在编写代码时,如果程序是从数据库中取出一条或多条记录,在使用这些记录的时候,一定记得要做非空判断,否则,如果取出的记录为空,会产生空指针异常。程序对获取的记录为空的情况,一般我都是打印下日志,将来在对问题排错的时候,也更容易发现。
3、有一句话说的好,一般程序员都只关注程序正常运行的情况,但实际上,我们更应该多关注的是程序非正常运行的时候。
4、如果代码在本地运行的好好的,而去服务器运行,则会报错 ,这种情况,可能是由于数据库的原因,可能是数据库中出现了某个不正常的数据,而程序本身又没有做非正常判断,导致发生错误,所以说第2条很重要。