public class EqualsBean extends Object implements Serializable
It works on all read/write properties, recursively. It support all primitive types, Strings, Collections, bean-like objects and multi-dimensional arrays of any of them.
The hashcode is calculated by getting the hashcode of the Bean String representation.
Modifier | Constructor and Description |
---|---|
protected |
EqualsBean(Class<?> beanClass)
Default constructor.
|
|
EqualsBean(Class<?> beanClass,
Object obj)
Creates a EqualsBean to be used in a delegation pattern.
|
Modifier and Type | Method and Description |
---|---|
boolean |
beanEquals(Object obj)
Indicates whether some other object is "equal to" the object passed in the constructor, as
defined by the Object equals() method.
|
int |
beanHashCode()
Returns the hashcode for the object passed in the constructor.
|
boolean |
equals(Object obj)
Indicates whether some other object is "equal to" this object as defined by the Object
equals() method.
|
int |
hashCode()
Returns the hashcode for this object.
|
protected EqualsBean(Class<?> beanClass)
To be used by classes extending EqualsBean only.
beanClass
- the class/interface to be used for property scanning.public EqualsBean(Class<?> beanClass, Object obj)
For example:
public class Foo implements FooI {
private EqualsBean equalsBean;
public Foo() {
equalsBean = new EqualsBean(FooI.class);
}
public boolean equals(Object obj) {
return equalsBean.beanEquals(obj);
}
public int hashCode() {
return equalsBean.beanHashCode();
}
}
beanClass
- the class/interface to be used for property scanning.obj
- object bean to test equality.public boolean equals(Object obj)
To be used by classes extending EqualsBean. Although it works also for classes using EqualsBean in a delegation pattern, for correctness those classes should use the
equals
in class Object
obj
- he reference object with which to compare.beanEquals method.
public boolean beanEquals(Object obj)
To be used by classes using EqualsBean in a delegation pattern,
obj
- he reference object with which to compare.constructor.
public int hashCode()
It follows the contract defined by the Object hashCode() method.
The hashcode is calculated by getting the hashcode of the Bean String representation.
To be used by classes extending EqualsBean. Although it works also for classes using EqualsBean in a delegation pattern, for correctness those classes should use the
hashCode
in class Object
beanHashCode method.
public int beanHashCode()
It follows the contract defined by the Object hashCode() method.
The hashcode is calculated by getting the hashcode of the Bean String representation.
To be used by classes using EqualsBean in a delegation pattern,
constructor.
Copyright © 2024. All rights reserved.