Java里面的异常分为运行时异常(RuntimeException)和检查异常(checked exception)
对于很多异常,在程序中throw new Exception()
这样的语句就申明了一个异常
如果是运行时异常,可以在程序中处理,也可以不处理,对于检查异常,必须要处理它
有一个问题,就是那些没有申明的异常时怎么把它抛出来的呢,就比如
obj.method();
当 obj==null
的时候,一定会抛出NPE,但是在method()
里面并没有这样的语句
method(){ if(this==null) throw new NullPointException(); }
那类似这样的 Exception
是怎么实现的呢
是在JVM做的?
那如果是在JVM中做的,那JVM对哪些检查异常做了这样的事呢,JVM又是怎么做的呢?
@剑心无痕说得对,我这里面问题确实很明显,obj是空,跟本没有办法找到method这个方法。
不过我还想要了解“null.method()”的时候,这个NullPointException是怎么给抛出来的,Java代码也没有看到哪里抛出了NullPointException?
守着一只汪
相关分类