Let's suppose there's a good question and two or more correct and well elaborated answers. They can even complement each other. But I like one better than the other.
Should I upvote both of them, as they answer the question, or just the best one?
When I hover over the upvote button, I read this prompt:
This answer is useful.
That doesn't sound like an exhortation to pick a "best" answer, or to differentiate a few better answers as standing out from the rest.
For that reason, I don't cast my votes as a means to differentiate between the best answers to a certain question; instead, I use them to recognize what I feel are particularly good answers. It's quite conceivable that I might read four answers to Question A, and vote none of them up, and then three answers to Question B, and vote all of them up.
Language isn't quantitative. A math question might have a single correct answer, yet a language question might have several equally legitimate answers, all of them quite different from the others.
More importantly, there are several reasons an answer might be considered "useful", and therefore earn one of my upvotes. Perhaps the answer matches the answer I would have given, in which case it has saved me the time of typing out an answer. Perhaps the answer teaches me something I didn't know before. Perhaps the answer examines the question in a way that I hadn't considered. Maybe the answer shows exemplary research, and therefore serves as a model answer for new members of the community. All of these show a degree of usefulness in one way or another, and I don't see why I ought to be constrained by a self-imposed quota on the number of upvotes I give, especially not in the case when a small handful of people give very different – but all very useful – answers.
The (sometimes unenviable) task of selecting the "best" answer from all those given rests with the O.P., not on those who are reading and learning from the discussion. The O.P. must select one, and only one; thankfully, I'm not bound by such a restriction. I've benefitted from remarkably thorough responses, impeccable explanations, and clever solutions to vexing problems. In cases where I've been lucky enough to enjoy more than one such answer to the same question, I've never felt like a judge at a talent contest, torn between casting my lone vote to the singer, the pianist, or the violinist; instead, I'm a member of the audience who can give a rousing ovation to all three performances.
That said, I try not to give out upvotes like candy, either; I try to save them for answers that are particularly well-crafted, spot-on, or brilliant.
Let me conclude by saying that voting is a privilege, and we all get to exercise that as we see fit. Some of the other folks have explained a different voting philosophy, and that's fine with me – anyone who holds such ideas are welcome to keep them. I'm just explaining my personal view on the matter.
If the SE system only allowed you to vote for one out of all answers, then that would be a decision enforced by the software designers.
Since the SE system does not enforce it (i.e. it is possible to vote for more than one at a time) then it is a behavioral choice. You may want to force yourself to vote for at most one at a time if it bothers you that this system is not like voting for a political candidate.
At SE, multiple responses are encouraged, voting for good answers is encouraged. If here is more than one good answer (and it is very possible), then go ahead and vote for all that you like.
Up-voting is subjective. You could up-vote both the answers, if you think they are both correct, and there are other questions that are less correct, or answer the question less precisely than the other answers.
If there are two answers, and one question is preferable than the other one, I would rather up-vote one, instead of voting both the questions.
The purpose of up-voting is simply making the best answer stand up between the other questions; if you vote all the given answers, the best answer will not stand up.