Why does Batman not kill?
He could have at least killed the Joker in The Dark Knight when he had the chance instead of handing him to the law. He would've done the world a great favour.
Bruce Wayne knows that he's a disturbed individual with violent tendencies and unresolved issues, and could easily slide towards evil. To stop that from happening he created a set of ground rules for himself, a code of ethics. No killing, and no guns.
Interestingly enough, this wasn't always the case. The very early Batman stories in the 1940's he was shown using guns and killing criminals. This didn't last long and the now familiar rules were now put in place.
These rules have created some very interesting stories. The Joker in particular, and Batman's unwillingness to kill him is a constant dilemma for the caped crusader. Watch Batman: Under the Red Hood for a very interesting story about that very same dilemma.