Scala Library
|
|
class
AnyRef
extends
Any
Class AnyRef
is the root class of all
reference types.
Method Summary | |
final def
|
!= (arg0 : AnyRef) : Boolean |
final def
|
==
(arg0 : AnyRef) : Boolean
o == arg0 is the same as if (o eq null) arg0 eq null else o.equals(arg0) . |
protected def
|
clone
: AnyRef
This method creates and returns a copy of the receiver object.
|
final def
|
eq
(arg0 : AnyRef) : Boolean
This method is used to test whether the argument (
arg0 ) is a reference to the
receiver object (this ). |
def
|
equals
(arg0 : Any) : Boolean
This method is used to compare the receiver object (
this )
with the argument object (arg0 ) for equivalence. |
protected def
|
finalize
: Unit
This method is called by the garbage collector on the receiver object when garbage
collection determines that there are no more references to the object.
|
final def
|
getClass
: java.lang.Class[AnyRef]
Returns a representation that corresponds to the dynamic class of the receiver object.
|
def
|
hashCode
: Int
Returns a hash code value for the object.
|
final def
|
ne
(arg0 : AnyRef) : Boolean
o.ne(arg0) is the same as !(o.eq(arg0)) . |
final def
|
notify
: Unit
Wakes up a single thread that is waiting on the receiver object's monitor.
|
final def
|
notifyAll
: Unit
Wakes up all threads that are waiting on the receiver object's monitor.
|
final def
|
synchronized [T0](arg0 : T0) : T0 |
def
|
toString
: java.lang.String
Returns a string representation of the object.
|
final def
|
wait : Unit |
final def
|
wait (arg0 : Long) : Unit |
final def
|
wait (arg0 : Long, arg1 : Int) : Unit |
Methods inherited from Any | |
==, !=, isInstanceOf, asInstanceOf |
Method Details |
final
def
getClass : java.lang.Class[AnyRef]
The nature of the representation is platform dependent.
def
hashCode : Int
The default hashing algorithm is platform dependent.
Note that it is allowed for two objects to have identical hash
codes (o1.hashCode.equals(o2.hashCode)
) yet not be
equal (o1.equals(o2)
returns false
). A
degenerate implementation could always return 0
.
However, it is required that if two objects are equal
(o1.equals(o2)
returns true
) that they
have identical hash codes
(o1.hashCode.equals(o2.hashCode)
). Therefore, when
overriding this method, be sure to verify that the behavior is
consistent with the equals
method.
this
)
with the argument object (arg0
) for equivalence.
The default implementations of this method is an equivalence relation:
x
of type Any
,
x.equals(x)
should return true
.x
and y
of type
Any
, x.equals(y)
should return true
if and only
if y.equals(x)
returns true
.x
, y
, and z
of type AnyRef
if x.equals(y)
returns true
and
y.equals(z)
returns
true
, then x.equals(z)
should return true
.
If you override this method, you should verify that
your implementation remains an equivalence relation.
Additionally, when overriding this method it is often necessary to
override hashCode
to ensure that objects that are
"equal" (o1.equals(o2)
returns true
)
hash to the same Int
(o1.hashCode.equals(o2.hashCode)
).
arg0 -
the object to compare against this object for equality.true
if the receiver object is equivalent to the argument; false
otherwise. protected
def
clone : AnyRef
The default implementation of the clone
method is platform dependent.
def
toString : java.lang.String
The default representation is platform dependent.
final
def
notify : Unit
final
def
notifyAll : Unit
final
def
wait : Unit
protected
def
finalize : Unit
The details of when and if the finalize
method are
invoked, as well as the interaction between finalize
and non-local returns and exceptions, are all platform dependent.
o == arg0
is the same as if (o eq null) arg0 eq null else o.equals(arg0)
.
arg0 -
the object to compare against this object for equality.true
if the receiver object is equivalent to the argument; false
otherwise. arg0
) is a reference to the
receiver object (this
).
The eq
method implements an
equivalence relation on non-null instances of
AnyRef
:
x
of type AnyRef
,
x.eq(x)
returns true
.x
and y
of type
AnyRef
, x.eq(y)
returns true
if and only
if y.eq(x)
returns true
.x
, y
, and z
of type AnyRef
if x.eq(y)
returns true
and
y.eq(z)
returns
true
, then x.eq(z)
returns true
.eq
method has three other properties.
x
and y
of type AnyRef
,
multiple invocations of x.eq(y)
consistently returns true
or consistently returns false
.x
of type AnyRef
,
x.eq(null)
and null.eq(x)
returns false
.null.eq(null)
returns true
. When overriding the equals
or
hashCode
methods, it is important to ensure that
their behavior is consistent with reference equality. Therefore,
if two objects are references to each other (o1 eq
o2
), they should be equal to each other (o1 ==
o2
) and they should hash to the same value
(o1.hashCode == o2.hashCode
).
arg0 -
the object to compare against this object for reference equality.true
if the argument is a reference to the receiver object; false
otherwise. o.ne(arg0)
is the same as !(o.eq(arg0))
.
arg0 -
the object to compare against this object for reference dis-equality.false
if the argument is not a reference to the receiver object; true
otherwise.
Scala Library
|
|