The whole notion of a "hero" is someone who sacrifices themselves for the herd. Someone who due to courage (suicidally low self-esteem and mindless idiocy) volunteers when the herd needs someone to die. So the whole notion of a hero is utterly despicable! And as Good people do not go along with despicable acts, we have a problem with the whole notion of a Good Hero.
No good person can ever be a hero. Because to be good means to conceive of Good and that's not something that is done easily or lightly. So, no good person can possibly be an idiot. Yet it is a fact that you, all of you, aren't worth the life of a single Good person. Not at one thousand to one, not at one million to one, and not at a billion to one.
Genuinely Good people are precious and their lives are valuable on a par with the continued existence of humanity. So you see, you're just not fucking worth it. And the FACT that you demand people sacrifice themselves for you all. The fact you use admiration and other despicable psychologically manipulative tools to control mindless herd members into suiciding for you ... only makes you less worth saving.
And as we established, a Good person will understand this because they're not an idiot. So we see that the notion of a Hero being a Good person (or vice versa) is utterly ludicrous. Batman is a Hero, therefore he cannot possibly be Good. And he happens to be Evil. Meanwhile, Hal Jordan ceased to be a hero precisely because he was Good.