Who was Christ speaking to and why? This is taken from the sermon on the mount where Christ is addressing a misconception on the part of the Jews that conduct proper for the civil government is also proper for an individual. Namely vengeance. The key to interpreting this passage is the use of the phrase, "you have heard it said..." This means that Christ is going to clear up a falsehood being taught by the Pharisees. The eye for an eye passage is from Exodus 21:24-25 and it explains how the government must deal with a crime. The punishment must fit the crime. The religious leaders of Christ's day had twisted a passage that applied to the government and misused it as a principle of personal revenge.
The Bible distinguishes clearly between the duties of the government and the duties of an individual. The government is to deal with the administration of justice, individuals have the responsibility of protecting their lives from attackers. Christ was not teaching something different about self defense than is taught elsewhere in the Bible. This would be contradicting Himself and the Bible!
Exodus 22:2-3 says, "If the thief is found breaking in, and he is struck so that he dies, there shall be no guilt for his bloodshed. If the sun has risen on him, there shall be guilt for his bloodshed. He should make full restitution; if he has nothing, then he shall be sold for his theft."
Proverbs 25:26 "A righteous man who falters before the wicked is like a murky spring and a polluted well."
Luke 22:36, "Then he said to them, "But now, the person who has a wallet and a traveling bag should take them along. The person who doesn't have a sword should sell his coat and buy one."
1 Timothy 5:8, "But if any provideth not for his own, and specially his own household, he hath denied the faith, and is worse than an unbeliever."
This is just scratching the surface. Of course the Bible does not say anything about guns. But there can be no doubt that we ARE entitled to defend ourselves and our property. However...We must also leave vengeance to first the government but ultimately the Lord. I am to treat my enemy with compassion. If someone is intending to hurt or steal from me or mine than I have the DUTY to defend myself and my property. But when I see the same man who was trying to take from me earlier sitting on the street needing food or help then I am to help him. I have to love my enemy but he is still my enemy and I still have the right to take his life when necessary.
edit:
Many people would say that nobody who has accepted Jesus Christ as their Savior needs to carry a gun for protection.
When Satan was tempting Jesus in the wilderness he challenged Jesus to throw himself off the top of the temple. Satan claimed that God's angels would protect him. Jesus responded: "It is written again, 'You shall not tempt the Lord your God'" (Matthew 4:7).
We all MUST trust in God for protection, but it is tempting God if we do not take the measures that He has laid out for us in the Bible.
You can draw a parallel to those faiths who refuse to use modern medicine. But this is a dumb idea because God always intended for us to make use of what was available.