类 ChainLockTimeoutException
- 所有已实现的接口:
Serializable
- 另请参阅:
-
构造器概要
构造器限定符构造器说明Constructs a new runtime exception withnullas its detail message.ChainLockTimeoutException(String message) Constructs a new runtime exception with the specified detail message.ChainLockTimeoutException(String message, Throwable cause) Constructs a new runtime exception with the specified detail message and cause.protectedChainLockTimeoutException(String message, Throwable cause, boolean enableSuppression, boolean writableStackTrace) Constructs a new runtime exception with the specified detail message, cause, suppression enabled or disabled, and writable stack trace enabled or disabled.Constructs a new runtime exception with the specified cause and a detail message of (cause==null ? -
方法概要
修饰符和类型方法说明protected Objectclone()Creates and returns a copy of this object.booleanIndicates whether some other object is "equal to" this one.Fills in the execution stack trace.protected voidfinalize()Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.getCause()Returns the cause of this throwable ornullif the cause is nonexistent or unknown.Creates a localized description of this throwable.Returns the detail message string of this throwable.Provides programmatic access to the stack trace information printed byprintStackTrace().inthashCode()Returns a hash code value for the object.Initializes the cause of this throwable to the specified value.voidPrints this throwable and its backtrace to the standard error stream.voidPrints this throwable and its backtrace to the specified print stream.voidPrints this throwable and its backtrace to the specified print writer.voidsetStackTrace(StackTraceElement[] stackTrace) Sets the stack trace elements that will be returned bygetStackTrace()and printed byprintStackTrace()and related methods.toString()Returns a short description of this throwable.从类继承的方法 java.lang.Throwable
addSuppressed, getSuppressed
-
构造器详细资料
-
ChainLockTimeoutException
public ChainLockTimeoutException()Constructs a new runtime exception withnullas its detail message. The cause is not initialized, and may subsequently be initialized by a call toinitCause(java.lang.Throwable). -
ChainLockTimeoutException
Constructs a new runtime exception with the specified detail message. The cause is not initialized, and may subsequently be initialized by a call toinitCause(java.lang.Throwable).- 参数:
message- the detail message. The detail message is saved for later retrieval by thegetMessage()method.
-
ChainLockTimeoutException
Constructs a new runtime exception with the specified detail message and cause.Note that the detail message associated with
causeis not automatically incorporated in this runtime exception's detail message.- 参数:
message- the detail message (which is saved for later retrieval by thegetMessage()method).cause- the cause (which is saved for later retrieval by thegetCause()method). (A null value is permitted, and indicates that the cause is nonexistent or unknown.)- 从以下版本开始:
- 1.4
-
ChainLockTimeoutException
Constructs a new runtime exception with the specified cause and a detail message of (cause==null ? null : cause.toString()) (which typically contains the class and detail message of cause). This constructor is useful for runtime exceptions that are little more than wrappers for other throwables.- 参数:
cause- the cause (which is saved for later retrieval by thegetCause()method). (A null value is permitted, and indicates that the cause is nonexistent or unknown.)- 从以下版本开始:
- 1.4
-
ChainLockTimeoutException
protected ChainLockTimeoutException(String message, Throwable cause, boolean enableSuppression, boolean writableStackTrace) Constructs a new runtime exception with the specified detail message, cause, suppression enabled or disabled, and writable stack trace enabled or disabled.- 参数:
message- the detail message.cause- the cause. (Anullvalue is permitted, and indicates that the cause is nonexistent or unknown.)enableSuppression- whether or not suppression is enabled or disabledwritableStackTrace- whether or not the stack trace should be writable- 从以下版本开始:
- 1.7
-
-
方法详细资料
-
getMessage
Returns the detail message string of this throwable.- 覆盖:
getMessage在类中Throwable- 返回:
- the detail message string of this
Throwableinstance (which may benull).
-
getLocalizedMessage
Creates a localized description of this throwable. Subclasses may override this method in order to produce a locale-specific message. For subclasses that do not override this method, the default implementation returns the same result asgetMessage().- 覆盖:
getLocalizedMessage在类中Throwable- 返回:
- The localized description of this throwable.
- 从以下版本开始:
- JDK1.1
-
getCause
Returns the cause of this throwable ornullif the cause is nonexistent or unknown. (The cause is the throwable that caused this throwable to get thrown.)This implementation returns the cause that was supplied via one of the constructors requiring a
Throwable, or that was set after creation with theinitCause(Throwable)method. While it is typically unnecessary to override this method, a subclass can override it to return a cause set by some other means. This is appropriate for a "legacy chained throwable" that predates the addition of chained exceptions toThrowable. Note that it is not necessary to override any of thePrintStackTracemethods, all of which invoke thegetCausemethod to determine the cause of a throwable. -
initCause
Initializes the cause of this throwable to the specified value. (The cause is the throwable that caused this throwable to get thrown.)This method can be called at most once. It is generally called from within the constructor, or immediately after creating the throwable. If this throwable was created with
#Throwable(Throwable)or#Throwable(String, Throwable), this method cannot be called even once.An example of using this method on a legacy throwable type without other support for setting the cause is:
try { lowLevelOp(); } catch (LowLevelException le) { throw (HighLevelException) new HighLevelException().initCause(le); // Legacy constructor }- 覆盖:
initCause在类中Throwable- 参数:
cause- the cause (which is saved for later retrieval by thegetCause()method). (Anullvalue is permitted, and indicates that the cause is nonexistent or unknown.)- 返回:
- a reference to this
Throwableinstance. - 抛出:
IllegalArgumentException- ifcauseis this throwable. (A throwable cannot be its own cause.)IllegalStateException- if this throwable was created with#Throwable(Throwable)or#Throwable(String, Throwable), or this method has already been called on this throwable.- 从以下版本开始:
- 1.4
-
toString
Returns a short description of this throwable. The result is the concatenation of:- the name of the class of this object
- ": " (a colon and a space)
- the result of invoking this object's
getLocalizedMessage()method
getLocalizedMessagereturnsnull, then just the class name is returned. -
printStackTrace
Prints this throwable and its backtrace to the standard error stream. This method prints a stack trace for thisThrowableobject on the error output stream that is the value of the fieldSystem.err. The first line of output contains the result of thetoString()method for this object. Remaining lines represent data previously recorded by the methodfillInStackTrace(). The format of this information depends on the implementation, but the following example may be regarded as typical:
This example was produced by running the program:java.lang.NullPointerException at MyClass.mash(MyClass.java:9) at MyClass.crunch(MyClass.java:6) at MyClass.main(MyClass.java:3)class MyClass { public static void main(String[] args) { crunch(null); } static void crunch(int[] a) { mash(a); } static void mash(int[] b) { System.out.println(b[0]); } }The backtrace for a throwable with an initialized, non-null cause should generally include the backtrace for the cause. The format of this information depends on the implementation, but the following example may be regarded as typical:HighLevelException: MidLevelException: LowLevelException at Junk.a(Junk.java:13) at Junk.main(Junk.java:4) Caused by: MidLevelException: LowLevelException at Junk.c(Junk.java:23) at Junk.b(Junk.java:17) at Junk.a(Junk.java:11) ... 1 more Caused by: LowLevelException at Junk.e(Junk.java:30) at Junk.d(Junk.java:27) at Junk.c(Junk.java:21) ... 3 moreNote the presence of lines containing the characters"...". These lines indicate that the remainder of the stack trace for this exception matches the indicated number of frames from the bottom of the stack trace of the exception that was caused by this exception (the "enclosing" exception). This shorthand can greatly reduce the length of the output in the common case where a wrapped exception is thrown from same method as the "causative exception" is caught. The above example was produced by running the program:public class Junk { public static void main(String args[]) { try { a(); } catch(HighLevelException e) { e.printStackTrace(); } } static void a() throws HighLevelException { try { b(); } catch(MidLevelException e) { throw new HighLevelException(e); } } static void b() throws MidLevelException { c(); } static void c() throws MidLevelException { try { d(); } catch(LowLevelException e) { throw new MidLevelException(e); } } static void d() throws LowLevelException { e(); } static void e() throws LowLevelException { throw new LowLevelException(); } } class HighLevelException extends Exception { HighLevelException(Throwable cause) { super(cause); } } class MidLevelException extends Exception { MidLevelException(Throwable cause) { super(cause); } } class LowLevelException extends Exception { }As of release 7, the platform supports the notion of suppressed exceptions (in conjunction with thetry-with-resources statement). Any exceptions that were suppressed in order to deliver an exception are printed out beneath the stack trace. The format of this information depends on the implementation, but the following example may be regarded as typical:Exception in thread "main" java.lang.Exception: Something happened at Foo.bar(Foo.java:10) at Foo.main(Foo.java:5) Suppressed: Resource$CloseFailException: Resource ID = 0 at Resource.close(Resource.java:26) at Foo.bar(Foo.java:9) ... 1 moreNote that the "... n more" notation is used on suppressed exceptions just at it is used on causes. Unlike causes, suppressed exceptions are indented beyond their "containing exceptions."An exception can have both a cause and one or more suppressed exceptions:
Exception in thread "main" java.lang.Exception: Main block at Foo3.main(Foo3.java:7) Suppressed: Resource$CloseFailException: Resource ID = 2 at Resource.close(Resource.java:26) at Foo3.main(Foo3.java:5) Suppressed: Resource$CloseFailException: Resource ID = 1 at Resource.close(Resource.java:26) at Foo3.main(Foo3.java:5) Caused by: java.lang.Exception: I did it at Foo3.main(Foo3.java:8)Likewise, a suppressed exception can have a cause:Exception in thread "main" java.lang.Exception: Main block at Foo4.main(Foo4.java:6) Suppressed: Resource2$CloseFailException: Resource ID = 1 at Resource2.close(Resource2.java:20) at Foo4.main(Foo4.java:5) Caused by: java.lang.Exception: Rats, you caught me at Resource2$CloseFailException.<init>(Resource2.java:45) ... 2 more- 覆盖:
printStackTrace在类中Throwable
-
printStackTrace
Prints this throwable and its backtrace to the specified print stream.- 覆盖:
printStackTrace在类中Throwable- 参数:
s-PrintStreamto use for output
-
printStackTrace
Prints this throwable and its backtrace to the specified print writer.- 覆盖:
printStackTrace在类中Throwable- 参数:
s-PrintWriterto use for output- 从以下版本开始:
- JDK1.1
-
fillInStackTrace
Fills in the execution stack trace. This method records within thisThrowableobject information about the current state of the stack frames for the current thread.If the stack trace of this
Throwableis not writable, calling this method has no effect.- 覆盖:
fillInStackTrace在类中Throwable- 返回:
- a reference to this
Throwableinstance. - 另请参阅:
-
getStackTrace
Provides programmatic access to the stack trace information printed byprintStackTrace(). Returns an array of stack trace elements, each representing one stack frame. The zeroth element of the array (assuming the array's length is non-zero) represents the top of the stack, which is the last method invocation in the sequence. Typically, this is the point at which this throwable was created and thrown. The last element of the array (assuming the array's length is non-zero) represents the bottom of the stack, which is the first method invocation in the sequence.Some virtual machines may, under some circumstances, omit one or more stack frames from the stack trace. In the extreme case, a virtual machine that has no stack trace information concerning this throwable is permitted to return a zero-length array from this method. Generally speaking, the array returned by this method will contain one element for every frame that would be printed by
printStackTrace. Writes to the returned array do not affect future calls to this method.- 覆盖:
getStackTrace在类中Throwable- 返回:
- an array of stack trace elements representing the stack trace pertaining to this throwable.
- 从以下版本开始:
- 1.4
-
setStackTrace
Sets the stack trace elements that will be returned bygetStackTrace()and printed byprintStackTrace()and related methods.This method, which is designed for use by RPC frameworks and other advanced systems, allows the client to override the default stack trace that is either generated by
fillInStackTrace()when a throwable is constructed or deserialized when a throwable is read from a serialization stream.If the stack trace of this
Throwableis not writable, calling this method has no effect other than validating its argument.- 覆盖:
setStackTrace在类中Throwable- 参数:
stackTrace- the stack trace elements to be associated with thisThrowable. The specified array is copied by this call; changes in the specified array after the method invocation returns will have no affect on thisThrowable's stack trace.- 抛出:
NullPointerException- ifstackTraceisnullor if any of the elements ofstackTracearenull- 从以下版本开始:
- 1.4
-
hashCode
Returns a hash code value for the object. This method is supported for the benefit of hash tables such as those provided byHashMap.The general contract of
hashCodeis:- Whenever it is invoked on the same object more than once during
an execution of a Java application, the
hashCodemethod must consistently return the same integer, provided no information used inequalscomparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application. - If two objects are equal according to the
equals(Object)method, then calling thehashCodemethod on each of the two objects must produce the same integer result. - It is not required that if two objects are unequal
according to the
Object.equals(Object)method, then calling thehashCodemethod on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hash tables.
As much as is reasonably practical, the hashCode method defined by class
Objectdoes return distinct integers for distinct objects. (This is typically implemented by converting the internal address of the object into an integer, but this implementation technique is not required by the Java™ programming language.) - Whenever it is invoked on the same object more than once during
an execution of a Java application, the
-
equals
Indicates whether some other object is "equal to" this one.The
equalsmethod implements an equivalence relation on non-null object references:- It is reflexive: for any non-null reference value
x,x.equals(x)should returntrue. - It is symmetric: for any non-null reference values
xandy,x.equals(y)should returntrueif and only ify.equals(x)returnstrue. - It is transitive: for any non-null reference values
x,y, andz, ifx.equals(y)returnstrueandy.equals(z)returnstrue, thenx.equals(z)should returntrue. - It is consistent: for any non-null reference values
xandy, multiple invocations ofx.equals(y)consistently returntrueor consistently returnfalse, provided no information used inequalscomparisons on the objects is modified. - For any non-null reference value
x,x.equals(null)should returnfalse.
The
equalsmethod for classObjectimplements the most discriminating possible equivalence relation on objects; that is, for any non-null reference valuesxandy, this method returnstrueif and only ifxandyrefer to the same object (x == yhas the valuetrue).Note that it is generally necessary to override the
hashCodemethod whenever this method is overridden, so as to maintain the general contract for thehashCodemethod, which states that equal objects must have equal hash codes. - It is reflexive: for any non-null reference value
-
clone
Creates and returns a copy of this object. The precise meaning of "copy" may depend on the class of the object. The general intent is that, for any objectx, the expression:
will be true, and that the expression:x.clone() != x
will bex.clone().getClass() == x.getClass()
true, but these are not absolute requirements. While it is typically the case that:
will bex.clone().equals(x)
true, this is not an absolute requirement.By convention, the returned object should be obtained by calling
super.clone. If a class and all of its superclasses (exceptObject) obey this convention, it will be the case thatx.clone().getClass() == x.getClass().By convention, the object returned by this method should be independent of this object (which is being cloned). To achieve this independence, it may be necessary to modify one or more fields of the object returned by
super.clonebefore returning it. Typically, this means copying any mutable objects that comprise the internal "deep structure" of the object being cloned and replacing the references to these objects with references to the copies. If a class contains only primitive fields or references to immutable objects, then it is usually the case that no fields in the object returned bysuper.cloneneed to be modified.The method
clonefor classObjectperforms a specific cloning operation. First, if the class of this object does not implement the interfaceCloneable, then aCloneNotSupportedExceptionis thrown. Note that all arrays are considered to implement the interfaceCloneableand that the return type of theclonemethod of an array typeT[]isT[]where T is any reference or primitive type. Otherwise, this method creates a new instance of the class of this object and initializes all its fields with exactly the contents of the corresponding fields of this object, as if by assignment; the contents of the fields are not themselves cloned. Thus, this method performs a "shallow copy" of this object, not a "deep copy" operation.The class
Objectdoes not itself implement the interfaceCloneable, so calling theclonemethod on an object whose class isObjectwill result in throwing an exception at run time.- 覆盖:
clone在类中Object- 返回:
- a clone of this instance.
- 抛出:
CloneNotSupportedException- if the object's class does not support theCloneableinterface. Subclasses that override theclonemethod can also throw this exception to indicate that an instance cannot be cloned.- 另请参阅:
-
finalize
Called by the garbage collector on an object when garbage collection determines that there are no more references to the object. A subclass overrides thefinalizemethod to dispose of system resources or to perform other cleanup.The general contract of
finalizeis that it is invoked if and when the Java™ virtual machine has determined that there is no longer any means by which this object can be accessed by any thread that has not yet died, except as a result of an action taken by the finalization of some other object or class which is ready to be finalized. Thefinalizemethod may take any action, including making this object available again to other threads; the usual purpose offinalize, however, is to perform cleanup actions before the object is irrevocably discarded. For example, the finalize method for an object that represents an input/output connection might perform explicit I/O transactions to break the connection before the object is permanently discarded.The
finalizemethod of classObjectperforms no special action; it simply returns normally. Subclasses ofObjectmay override this definition.The Java programming language does not guarantee which thread will invoke the
finalizemethod for any given object. It is guaranteed, however, that the thread that invokes finalize will not be holding any user-visible synchronization locks when finalize is invoked. If an uncaught exception is thrown by the finalize method, the exception is ignored and finalization of that object terminates.After the
finalizemethod has been invoked for an object, no further action is taken until the Java virtual machine has again determined that there is no longer any means by which this object can be accessed by any thread that has not yet died, including possible actions by other objects or classes which are ready to be finalized, at which point the object may be discarded.The
finalizemethod is never invoked more than once by a Java virtual machine for any given object.Any exception thrown by the
finalizemethod causes the finalization of this object to be halted, but is otherwise ignored.
-