Class Problem
- All Implemented Interfaces:
Comparable<Problem>
- Version:
- 1.0
- Author:
- Dr. Jalal H. Kiswani
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionint
Compares this object with the specified object for order.boolean
Indicates whether some other object is "equal to" this one.This method retrieves the problem describing message.int
hashCode()
Returns a hash code value for the object.boolean
isFatal()
This method checks if this Problem instance represents a fatal problem.boolean
isWorseThan
(Problem other) This method compares the severity of this Problem instance with another Problem instance.severity()
This method retrieves the severity of this Problem instance.toString()
Returns a string representation of the object.
-
Constructor Details
-
Problem
This method constructs a new with the provided message and severity level.- Parameters:
message
- Specifies the message describing the problem.severity
- Specifies the level of severity of the problem.
-
-
Method Details
-
compareTo
Compares this object with the specified object for order. Returns a negative integer, zero, or a positive integer as this object is less than, equal to, or greater than the specified object.The implementor must ensure
signum
(x.compareTo(y)) == -signum(y.compareTo(x))
for allx
andy
. (This implies thatx.compareTo(y)
must throw an exception if and only ify.compareTo(x)
throws an exception.)The implementor must also ensure that the relation is transitive:
(x.compareTo(y) > 0 && y.compareTo(z) > 0)
impliesx.compareTo(z) > 0
.Finally, the implementor must ensure that
x.compareTo(y)==0
implies thatsignum(x.compareTo(z)) == signum(y.compareTo(z))
, for allz
.- Specified by:
compareTo
in interfaceComparable<Problem>
- Parameters:
o
- the object to be compared.- Returns:
- a negative integer, zero, or a positive integer as this object is less than, equal to, or greater than the specified object.
-
equals
Indicates whether some other object is "equal to" this one.The
equals
method 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
x
andy
,x.equals(y)
should returntrue
if and only ify.equals(x)
returnstrue
. - It is transitive: for any non-null reference values
x
,y
, andz
, ifx.equals(y)
returnstrue
andy.equals(z)
returnstrue
, thenx.equals(z)
should returntrue
. - It is consistent: for any non-null reference values
x
andy
, multiple invocations ofx.equals(y)
consistently returntrue
or consistently returnfalse
, provided no information used inequals
comparisons on the objects is modified. - For any non-null reference value
x
,x.equals(null)
should returnfalse
.
An equivalence relation partitions the elements it operates on into equivalence classes; all the members of an equivalence class are equal to each other. Members of an equivalence class are substitutable for each other, at least for some purposes.
- It is reflexive: for any non-null reference value
-
getMessage
This method retrieves the problem describing message.- Returns:
- the problem describing message.
-
hashCode
public int 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
hashCode
is:- Whenever it is invoked on the same object more than once during
an execution of a Java application, the
hashCode
method must consistently return the same integer, provided no information used inequals
comparisons 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
method, then calling thehashCode
method 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
equals
method, then calling thehashCode
method 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.
- Whenever it is invoked on the same object more than once during
an execution of a Java application, the
-
isFatal
public boolean isFatal()This method checks if this Problem instance represents a fatal problem.- Returns:
- true, if the severity is FATAL; otherwise, false.
-
isWorseThan
This method compares the severity of this Problem instance with another Problem instance.- Parameters:
other
- Specifies the other Problem instance to compare with.- Returns:
- true, if this problem is worse (more severe) than the other; false otherwise
-
severity
This method retrieves the severity of this Problem instance.- Returns:
- the severity level of the problem.
-
toString
Returns a string representation of the object.
-