You should override the super equals() here because thats the one that actually gets called

    @Override
    public boolean equals(Object obj){
        if(obj instanceof Catchphrase){
            return compareTo((Catchphrase)obj) == 0;
        }
        else {
            return false;
        }
    }