我在static
中有concatString(String source)
方法class
,其中String
参数为“来源”。同一个类有另一个static string
变量“target”。 “target”字符串在另一个名为init()
的静态方法中初始化。现在,如果用户在调用concatString()
方法之前调用init()
方法,则需要抛出exception
。
任何人都应该exception
throw
concatString()
来自IIlegalArgumentException
我认为我们不能抛出null pointer exception
,因为这个论点没有错。它应该是{{1}}吗?
答案 0 :(得分:2)
答案 1 :(得分:0)
不要要求为您的班级用户拨打init()
。要么在课程构建期间调用init()
中的代码,要么在调用init()
时调用concatString()
,如下所示:
public static String concatString(String source)
{
init();
//concat string code.
return concatedString;
}
答案 2 :(得分:0)
您应该为自己创建一个自定义例外
这将使您的例外在您的上下文中保留一些信息。
class MyConcatException extends Exception{
private static final long serialVersionUID = 1L;
public MyConcatException(String message){
super(message);
}
}
用法:
public void MyMethod() throws MyConcatException
{
//do something
throw new MyConcatException("target is not init");
}
你会得到:
MyConcatException: target is not init
at Main.MyMethod(Main.java:16)
at Main.main(Main.java:6)