关闭

类和结构的区别

379人阅读 评论(0) 收藏 举报
分类:

类和结构的区别


结构是值类型,类是引用类型。

结构不能从另外一个结构或者类继承,本身也不能被继承,虽然结构没有明确的用sealed 声明,可是结构是隐式的sealed ,   类则完全可扩展的,除非显示的声明sealed 否则类可以继承其他类和接口,自身也能被 继承 。 注:虽然结构不能被继承 可是结构能够继承接口,方法和类继承接口一样。


结构没有默认的构造函数,但是可以添加构造函数 ,结构没有析构函数, 不能有protected 修饰符,  可以不使用new 初始化,  在结构中初始化实例字段是错误的 。 类则 有默认的构造函数和有析构函数 , 有protected 修饰符, 必须使用new 初始化。

 对于大量的逻辑的对象,创建类要比创建结构好一些 , 结构表示如点、矩形和颜色这样的轻量对象,例如,如果声明一个含有 1000 个点对象的数组,则将为引用每个对象分配附加的内存。在此情况下,结构的成本较低。   在表现抽象和多级别的对象层次时,类是最好的选择 ,  大多数情况下该类型只是一些数据时,结构是最佳的选择。



-----------摘自百度文库《c#中结构与类的区别》


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:214310次
    • 积分:2911
    • 等级:
    • 排名:第12695名
    • 原创:71篇
    • 转载:17篇
    • 译文:24篇
    • 评论:9条
    最新评论