Java is an up-and-comer, Java as a development language open source projects, such as STRUTS,HIBERNATE,JDO,SPRING,ECLIPSE,SWT and so on. Object-oriented technology and popular, so that Java has been a lot of developers love, object-oriented technology, application framework to achieve more and more inseparable from the Java language, or, the Java language is a good implementation tool. Various areas of design patterns, various application frameworks, have greatly enriched the Java community.
Linux is an open source operating system, because Java Cross-platform, Java programs can also run on the Linux platform, and Java can implement Linux-specific programs, by SWT has a Linux based GTK version.
The Java language is not contradictory to Linux, they are more of a unified relationship. Linux provides a foundation on which Java programs can run. They can be matched to an enterprise-class solution. While learning the Java language, it is very helpful to learn about Linux's system management.
C language as the original open source community widely used language, for now, it accounts for the largest share of open source projects, but the share is increasingly being overrun by C++/java, and on the other hand, a C + + version that encapsulates the original C program, such as gtk+/gtkmm/ Bakery. The use of new technology for software development, but also a good reuse of the original C program written procedures, is a problem people want to solve. And the general trend is that language is evolving, we are not only learning C, but also learn C + +.
As a compilation tool, the GNU compilation Tool chain is currently a popular tool. There is a similarity between the C + + and the Java languages, where Makefile,java has ant.
At the same time, the development of the Java language also provides support for C + +, such as the CDT's C + + development environment provided by the Eclipse platform, Borland C + + Builder X is also in the Java language as the development language, which explains to some extent the Java language and C/s Language integration and cooperation. C + + is pursuing high performance, while Java is more prescriptive and uniformity-oriented.
Through the learning of the Java language, we have a deeper understanding of the strong, more correct and flexible use of the C + + object-oriented mechanism in C + + language. As an object-oriented language, when one is really in control, it also means mastering another one in some sense.
Therefore, the C programmer under Linux, now at the same time mastered the C++,java language, it is not surprising.