那是因为你string是空的,没有实例化,在你使用时这个串时,对串抛出的异常,和函数没关系!
解决方案 »
- ext的js源文件在myeclipse9中检验错误
- JNA调用dll的问题
- Java中使用什么方法可以实现把两条不相交的曲线之间的区域填充上颜色
- 请问如何理解 URLConnection.getOutputStream()?
- 初学java 大侠们来帮帮忙 多谢了 感谢各位
- 请问下面的字符串我要从<?xml version="1.0"开始截取到最后</soap:Envelope>怎么实现,用substring只能从哪个字符开始
- 关于java阶乘运算的,有一点始终不明白,请帮忙解释下谢谢。
- 把数组中所有连续二个以上的0去掉,将结果存入一个新数组,在线等
- 又来给分了!
- 很急的java mail 包下载
- 关于线程wait的问题,向各位大侠求救!!!!!
- 在Java文件中,在某处出错,如果想得到该java源文件名和出错行数用什么函数?
比如,给你一个函数public void xxx()没明确说明会抛出异常,那我怎么判断?
每个都加try显得程序不够精炼,加一个大范围的try又不能够精确控制程序流程,难,实在难!
看看java语言规范吧,专门有一章是讲异常的。
void x()
{
y();//不能确定一定抛出异常
z();//不能确定一定抛出异常
m();//不能确定一定抛出异常
n();//不能确定一定抛出异常
p();//不能确定一定抛出异常
}
假如上面有很多地方有可能抛出异常(有10个不算多吧),但不管每个地方有没有异常(有异常的话也不严重影响程序运行,如果不catch,程序岂不跑乱了),都按顺序执行,如何做?只有每个有可能出现异常的地方都加try、catch吗?
void x()
{
try {
y();//不能确定一定抛出异常
z();//不能确定一定抛出异常
m();//不能确定一定抛出异常
n();//不能确定一定抛出异常
p();//不能确定一定抛出异常
} catch (Throwable t) {
t.printStackTrace();
//...
}
}
有异常的话,可从堆栈跟踪里清楚地看到是y,z,m...的那个出了错
|
+-java.lang.Throwable
|
+-java.lang.Exception(一定要catch或者throws)
|
+-java.lang.RuntimeException(JVM会自己处理,当然也可以自己处理)
我可不那样认为,我认为一个好的程序是可以在违例中写流程控制的,在违例中写流程控制不但不是不好,而且是非常好,我以前做过的一个项目就有在catch{}里写出的流程.楼上的很多位大侠说的都很好.可以学习学习.