Please explain this compare method : <pre><code>public int compareTo(Name other) {
    int result = this.familyName.compareTo(other.familyName);

    if (result == 0) {
        result = this.firstName.compareTo(other.firstName);
    }

    return result;
}
</code></pre>

<p>I can't comprehend the meat of the code, how it is used to compare names.</p>
