C# 与 Java 的区别

泛型不一样,Java泛型只是编译时的,但C#的泛型在运行时也被维持,而且适用于value types 和 reference types
C# 没有 checked exceptions
Java 不允许建立user-defined 的value types
Java 不允许运算符重载
Java 没有类似LINQ的特性
Java 不支持委托
C# 没有匿名内部类
C#没有像java 那样的内部类,所有的nested classes 其实都像Java 的静态nested classses
Java 没有静态类
Java 没有 扩展方法(extension methods)
两者的访问修饰符有一定区别
两者初始化(initialization)的顺序有一定不同。C#初始化变量后才调用父类的构造方法Java 没有类似“properties”的东西,而是约定俗成为getter 和setterJava 没有类似与"unsafe"的特性两者的枚举(enums)有一定的不同,Java的更加面向对象Java的参数只能传值,没有类似于C#的ref 和out 传递引用。(注:Java 传递对象只是传递对象引用的copy)
Java 没有partial types
C# 的interface 不能定义字段
Java 没有unsigned 的整形
Java 没有类型与nullable 的value types
更多不同情参看:C# From a Java Developer's Perspective

本文由博客群发一文多发等运营工具平台 OpenWrite 发布

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容