• 类和结构体的区别


    结构体(sturct)是一种值类型,而类(class)是引用类型。区别在于复制方式,值类型的数据是值赋值,引用类型的数据是引用复制。

    结构体使用栈存储(Stack Allocation),而类使用堆存储(Heap Allocation)。  

      栈的空间相对较小.但是存储在栈中的数据访问效率相对较高。

      堆的空间相对较大.但是存储在堆中的数据的访问效率相对较低

    结构体使用完之后就自动解除内存分配,类实例有垃圾回收机制来保证内存的回收处理

    如何选择结构体还是类

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

  • 相关阅读:
    Java 运动模糊
    Efounds笔试
    Algorithms code
    Java 画图
    Java 笔记
    Java 对二值化图片识别连通域
    工厂模式
    数据库克隆
    SQL优化
    微信调起jssdk一闪而过
  • 原文地址:https://www.cnblogs.com/ogaligong/p/12372774.html
Copyright © 2020-2023  润新知