.NET中结构与类的区别

        .NET中的类型有5中:类、结构、枚举、接口和委托。而类和结构有着很大的相似性,都可以拥有向字段、方法这样的成员。

        但是,类和结构还是有很多不同的。

        1)结构是 值类型,而类确是引用类型的。

        2)结构不支持继承。

        3)因为结构是 值类型的,所以两个变量不能指向同一结构实例。

        4)引用类型可以为空(null),但却不能给值类型赋值为空,会导致编译出错

                    例如 System.DataTime是一个结构,以下是错误的

                    System.dataTime today = null;     //Wrong

               为了规避这个问题,.NET Framework提供了System.Nunllable结构来使任意结构可以为空,               简单的写法为:   System.dataTime? today = null;

                           int? x = null;  //x是nullable


C#中所有的基本类型,都是在System命名空间中所定义的结构的别名。例如 int和char,我们每在C#中声明一个int,就会创建一个System.Int32实例,每一个char,就会有一个System.Char实例支持它。值类型继承自System.ValueType,引用类型继承自System.Object。


还有一个小问题我之前没听过,就是程序集的概念

        【我们可以在System.Numerics.dll程序集中找到System.Numerics命名空间,要使用其成员,我们需要现在项目中增加对这个程序集的引用】   Project->Add Reference选中想引用组件类型的标签页

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章