{
if (object == null) {
throw new IllegalArgumentException(message);
}
}
public
class IllegalArgumentException extends RuntimeException {
/**
* Constructs an <code>IllegalArgumentException</code> with no
* detail message.
*/
public IllegalArgumentException() {
super();
}
/**
* Constructs an <code>IllegalArgumentException</code> with the
* specified detail message.
*
* @param s the detail message.
*/
public IllegalArgumentException(String s) {
super(s);
}
/**
* Constructs a new exception with the specified detail message and
* cause.
*
* <p>Note that the detail message associated with <code>cause</code> is
* <i>not</i> automatically incorporated in this exception's detail
* message.
*
* @param message the detail message (which is saved for later retrieval
* by the {@link Throwable#getMessage()} method).
* @param cause the cause (which is saved for later retrieval by the
* {@link Throwable#getCause()} method). (A <tt>null</tt> value
* is permitted, and indicates that the cause is nonexistent or
* unknown.)
* @since 1.5
*/
public IllegalArgumentException(String message, Throwable cause) {
super(message, cause);
}
/**
* Constructs a new exception with the specified cause and a detail
* message of <tt>(cause==null ? null : cause.toString())</tt> (which
* typically contains the class and detail message of <tt>cause</tt>).
* This constructor is useful for exceptions that are little more than
* wrappers for other throwables (for example, {@link
* java.security.PrivilegedActionException}).
*
* @param cause the cause (which is saved for later retrieval by the
* {@link Throwable#getCause()} method). (A <tt>null</tt> value is
* permitted, and indicates that the cause is nonexistent or
* unknown.)
* @since 1.5
*/
public IllegalArgumentException(Throwable cause) {
super(cause);
}
private static final long serialVersionUID = -5365630128856068164L;
}
例子:
public class UnauthorizedServiceException
extends RuntimeException
{
private static final long serialVersionUID = 3905807495715960369L;
public static final String CODE_UNAUTHZ_SERVICE = "screen.service.error.message";
public static final String CODE_EMPTY_SVC_MGMR = "screen.service.empty.error.message";
private String code = null;
public UnauthorizedServiceException(String message)
{
super(message);
}
public UnauthorizedServiceException(String code, String message)
{
this(message);
this.code = code;
}
public UnauthorizedServiceException(String message, Throwable cause)
{
super(message, cause);
}
public final String getCode()
{
return this.code;
}
}
在别的地方的使用:
if (registeredService == null)
{
String msg = String.format("ServiceManagement: Unauthorized Service Access. Service [%s] is not found in service registry.", new Object[] { service.getId() });
this.logger.warn(msg);
throw new UnauthorizedServiceException("screen.service.error.message", msg);
}