posted 16 years ago
Here's the short answer: No, C# will not hurt Java.
Long answer: I think that all professional programmers should be fluent in these languages: Java, C++, and C#. Why? Because they define modern programming. Also, they all orbit around a common "center of gravity", sharing a common syntax, related (but distinct) object models, and core functionality. For example, C++ supplies the STL, Java supplies the Collections Framework, and C# supplies the Collections library. All give the programmer access to predefined data structures, algorithms, etc. Furthermore, all three languages implement a similar form of generic programming.
At this time, C# and Java are locked in a back-and-forth competition in terms of which is currently at the forefront of computer language design. In this competition, the real winners are us, the programmers, because each new release gives us a better, more powerful language.
One last point: Sometimes I am asked by a newcommer to programming, what language to learn first. I always respond: Java. Why? Good Java programmers are always in demand.
For my latest books on Java, including Introducing JavaFX 8 Programming, see HerbSchildt.com