Comparison between j2se and C #

Source: Internet
Author: User

I recently studied j2se. after about 20 days, I read the j2se of Jack Ma's instructor. I feel that this teacher is too humorous. I will not be distracted when I listen to his lectures, and the time utilization is very high. I would like to give a thumbs-up to Jack Ma, and then I would like to give two thanks to Jack Mi, who asked us to learn this video! (There are many beautiful things in the world, but what is lacking is the eyes for discovering beautiful things !).

I don't need to talk about it anymore. Let's take a look at the content in this video. As shown in,

I may have learned any kind of object-oriented language (the C # And C # I learned is modeled after Java and further improved Java, are these things basically all learned? It seems that there is only GUI, and JDBC is a new stuff.

Actually, they are similar. Most people think they are the same. Compare them below!

In terms of syntax, both of them discard the const modification of functions and their parameters in C ++, macro replacement, global variables and global functions, and many other flashy places.

In terms of inheritance, both adopt a single inheritance and multi-interface implementation scheme that is easier to understand and construct. In terms of source code organization, we have put forward a better logical encapsulation of declarations and implementations.

The box/Unbox proposed by C # is superior to the Java packaging class in terms of unified types between basic types and single inherited objects, and the efficiency is also better.

Component-oriented is undoubtedly the mainstream of software development. C # programming for components is even a "infatuated", which is not the same as Java that came out six years ago-of course this is a problem of the times. C # provides first-hand support for component programming through attributes, indexers, delegates, events, Operator overloading, features, and versions. Although these can be indirectly implemented through methods, interfaces, or adapters in Java, however, the history of the software industry tells us that programming efficiency and logical design are both a great challenge-advanced languages are first faced with humans rather than machines. Apart from the component support mechanisms at these language levels ,. the. NET platform also provides a package of solutions for component configuration, operation, and management, while Visual Studio tailored for component development. net is even more exciting, which opens up a broad world for C # component programming. Java's weakness in other technical aspects is negligible, but Java in component programming is rather hard to cure than C. C # has an irresistible charm and temptation in this respect, especially for developers who come from the C ++ and Visual Basic backgrounds.

In terms of cross-platform support and implementation of Java, the speed of JVM is still a headache. C # has fully considered portability in terms of underlying structure, but at least it is not yet mature and tested. C # cross-platform programming seems to be more keen on XML Web Services Interoperability than cross-platform programming. However, C # uses its basic language structure (CLI) to support object-level interoperability among more than 20 mainstream languages, which greatly improves the technical position of C. Low-cost interoperability with COM components also earned a lot of points for C #-maintaining a compatible system is very important to the modern software industry and is also responsible for the majority of developers.

Of course, the comprehensive technical evaluation of the two languages is not just a simple list of the above points, its backend platform (C #. net, Java for J2EE), the support of its programming framework, the implementation of tools related to various languages, and the existing system foundation have a considerable impact on the development of programming languages. From a purely technical perspective, C # is undoubtedly more competitive than Java. It doesn't make sense to argue who plagiarize. The development of technology is a process of mutual reference. A pure technical competition cannot determine the outcome of this debate-if it is necessary to fight. The software industry is keen on competition, and technologies honed by the market can better serve us. Let's wait and see!

Later, bloggers successively launched j2se blogs, such as input and output, network programming, multithreading, and GUI!

 

 

 

Comparison between j2se and C #

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.