ふと思ったんですけど、

class Sample {
    public int a = 0;
    public int b = 0;
    public boolean equals(Object obj) {
        return obj instanceof Sample && ((Sample)obj).a == a;
    } 
}

みたいに、一部の public メンバだけに注目して equals 判定するのって、よくあること?よくないこと?