I think the reasoning behind it is that it forces students to learn OO programming and that it'll work on every platform(win, mac, linux, phones, set top boxes, tv's, etc) and students should be able to apply the same logic to other languages(and most of the syntax too). Some colleges give almost an equal amount of c# as they do java though.
Its also quite popular in the industry for some reason, they want lots of java or c# programmers(mostly java because it can be used on most places), which makes the schools create more java and c# programmers, which makes the companies want more java and c# programmers, which makes the schools create more java and c# programmers, which makes the..... you get the picture.
Its the same reasons why schools used to use windows for everything, because they had to teach kids something they would end up using in the real world. And in turn, companies stick with windows, because they need something their employees can use. Only now is this starting to change, probably because its starting to look similar enough and because kids should already know how to use a windows machine.
Knowing c++ is going to give you an edge over the rest of the students though, I'd say definitely keep up those skills too. But yeah computer science can be disappointing if you hope to learn all kinds of fun low level things or more languages, you're on your own there.
And maybe.. be glad its not visual basic anymore.
<Yoda> if someone says something i don't like, i ban him, ban whoever defends him, and then ban the witnesses...