If a teacher can't teach one subject, then how will a student study more than 5 or 6 subjects?
Do we eat same dish as breakfast, lunch and dinner? I guess No. It can be for a day or a week but not always.
Why teachers can't teach all subject is something I also used to think during my student life. Now as I have been a teacher, let me write few things.
Firstly, teachers who are teaching you now have also gone through those studies you are currently going through and they have cleared every of those exam to reach where they are today. haven't they?
Secondly, As a teacher, I don't believe that I need to teach only what I know or what I had studied. Teacher in himself/herself is also a student/learner who learns things independently or with least external help. That's why we dare to teach things you haven't heard or it might have happened just few days back. Apart from few who teaches just as no other option is available, teacher are someone who do not know only methodology of teaching, but they also know how to learn any of teaching.
And it's not that they can't teach all subjects. As a teacher we need to teach different subjects for different levels at a time.
Teaching every subjects to one class won't be as effective as teaching some particular and related subjects to different class.
Teaching is far more than knowing the content area. Each content area requires different methods. Teaching math is very, very different from teaching science and social studies. Learning something new is a similar process all around and is something we do actively in part of life outside of school and inside. We all have methods that we prefer to learn with - listening, reading, doing, etc. but it doesn't mean that we "can't" learn using the other methods, just that we have a preference.
As a teacher the harder the content area the more specialized it is. Teaching requires a deep understanding of all aspects of the content area, not merely what one is teaching on a particular day. We have to know more than our students will be learning so that we can enhance for those who are ready for it, we must know how to differentiate learning so that those who have special learning needs can understand the content despite their learning disabilities. It is like teaching one content to three or four different grade levels all at the same time, and you must make it interesting, engaging, and relevant.
Students use the preparation, hard work and knowledge of a teacher to learn a fraction of what is presented on many different levels. Those who do not teach often think that teaching is easy. I have seen instances where non-teachers were invited to teach a class to kindergartners. Everyone knows kinder content right? Letters, numbers, sounds? But can you teach them, keep control of the classroom, make sure everyone is on task, getting the attention they need, etc. It isn't easy. Elementary school teachers must teach all content areas which means they must prepared (prep) for 6–8 content areas daily. Secondary schools (middle and high school) have content specific specialists because the content is becoming more intricate and difficult. Again, we must know the content much deeper that what we will be teaching to be effective so we are can be ready for all questions and so we are setting the student up correctly for their next years in school.
I invited a friend to teach my physical science class for a day. We were studying force and motion. This person is an engineer so these are content he works with on a regular basis and should know far better than a middle school science teacher. He does know far more than I about the physics of motion but he doesn't know how to teach. He was super surprised that he couldn't keep the kids' attention, the kids didn't understand him, and that the lesson was a disaster. Teaching is a specialty and each content is a sub-specialty. Can you imagine a teacher having to know all the ins and outs of journalism, physics, drama, world history (all of it!) etc and do it well? We specialize so that we can do what we do well.
State of teaching something is so much different from stuying that. When you learn a subject deeply so then you might can teach that to others. Also you maybe ran into an in appropriate teacher, you shouldn't compare him/her with all!