Firstly, Java developers may occasionally be the highest paid programmers (now) but not because the language, but rather more for the education most java developers come from.
As it's been said, Java is taught in post secondary almost across the aboard, whereas C++ has never been a educational tool likely due to it's complexity.
However C/C++ are still, by far, the most popular languages and that will likely not change in at least the next 10 years...
Most professional Windows applications, which are a majority of the market, are developed, still using C++ w/ MFC
Want proof? Check out http://www.codeproject.com I've been a member almost since the beginning, and I can say with confidence, it's the largest Windows community outside of MSDN communities and everyone there does C++/MFC almost exclusively.
Although C# is growing at incredle break neck speeds, remember that many of those same C# fanatics are also C++ geeks and I know from being a long time member that many are just tinkering with C# and MC++
It'd be a hard sell to convert so many MFC fanatics (myself included) to entirely switch to C# or Java.
Basically, what I'm trying to say, is C++ is *still* a wise time investment and will be for many years to come. It's fast, flexible and furious in everyway...no wonder it's still around and popular as it is many years later.
Secondly, there is no difference between a developer, programmer and scripter really...we all write code, it's the language that determines the skillset not a silly label...beside technically and literally I guess...HTML coding is "programming" just a very high level form of programming...
C# is likely your best bet, as Windows isn't loosing that much ground, despite Linux getting better and better. And M$ have spent incredible amounts of money in R & D, marketing, etc on C# so I'm willing to bet it's here in the future and besides, it's being adapted nicely (again: look to codeproject.com)
Java, is an interesting language/tool, not because it's arguably more OOP than C#, but mostly because of it's open-ness
http://www.itbusiness.ca/it/client/en/h ... p?id=40315
http://www.itbusiness.ca/it/client/en/H ... earch=True
It's portability is likely to be more *truely* cross platform...yes .NET has the CLR which in theory would allow developers to write cross platform applications...but let's be realistic...
M$ isn't going to spend great deals of time making .NET run on anything BUT Windows, etc...
So Java is a good choice here. Also there are likely more portabl devices which support java than .NET, for instance my phone is Java powered
Thirdly, your book about Java published in 1997...is likely just fine for learning the basics...I've bought books for C++ that are old as well and still they can teach me things...yes there might be new keywords, etc, but for the most part it'll be fine...for learning the fundamentals...
Just don't expect the examples to build for you properly, as compiler switches, etc may change...but I imagine the core of the langauge has pretty much stayed static...
Cheers


