MainClass.java Source code

Java tutorial

Introduction

Here is the source code for MainClass.java

Source

import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
import org.apache.commons.lang.builder.ToStringBuilder;
import org.apache.commons.lang.builder.ToStringStyle;

public class MainClass {
    public static void main(String[] args) {
        //Create new BuilderTrial instances
        BuilderTrial one = new BuilderTrial("Becker", 35);
        BuilderTrial two = new BuilderTrial("Becker", 35);
        BuilderTrial three = new BuilderTrial("Agassi", 33);

        //one and two hold the same data in different objects
        //three holds different data
        System.out.println("One>>>" + one);
        System.out.println("Two>>>" + two);
        System.out.println("Three>>>" + three);

        System.out.println("one equals two? " + one.equals(two));
        System.out.println("one equals three? " + one.equals(three));

        //As one and two hold the same data, the same hashcode is returned.
        System.out.println("One HashCode>>> " + one.hashCode());
        System.out.println("Two HashCode>>> " + two.hashCode());
        System.out.println("Three HashCode>>> " + three.hashCode());
    }
}

class BuilderTrial {
    private String name;
    private int age;

    public BuilderTrial(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public static void main(String[] args) {
    }

    public boolean equals(Object objCompared) {
        if (!(objCompared instanceof BuilderTrial)) {
            return false;
        }

        BuilderTrial rhs = (BuilderTrial) objCompared;

        return new EqualsBuilder().append(name, rhs.name).append(age, rhs.age).isEquals();
    }

    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE).append("Name", name).append("Age", age)
                .toString();
    }

    public int hashCode() {
        return new HashCodeBuilder(15, 19).append(name).append(age).toHashCode();
    }
}