zoukankan      html  css  js  c++  java
  • C#类和结构的关系

      主要联系:类和结构都是创建对象的模板,每个对象都包含数据,并提供了处理和访问数据的方法。类定义了每个类对象(实例)可以包含什么数据和功能。例如,如果一个类表示一个顾客,就可以定义字段CustomerID、FirstName、LastName和Address,包含该顾客的信息。还可以定义处理存储在这些字段中的数据的功能。接着就可以实例化这个类的对象,以表示某个顾客,并为这个实例设置这些字段,使用其功能。

    class PhoneCustomer
        {
            public const string DayOfSendingBill = "Monday";
            public int CustomerID;
            public string FirstName;
            public string LastName;
        }

      主要区别:结构和类的区别是他们在内存中的存储方式(类是存储在堆(heap)上的引用类型,结构是存储在堆栈(stack)上的值类型)、访问方式和一些特征(如结构不支持继承)。较小的数据类型使用结构可提高性能。但在语法上,结构和类非常相似,主要的区别是使用关键字struct代替class来声明结构。例如,如果希望所有的PhoneCustmer实例都存储在堆栈上,而不是存储在托管堆上,就可以编写下面的语句:

    struct PhoneCustomerStruct
        {
            public const string DayOfSendingBill = "Monday";
            public int CustomerID;
            public string FirstName;
            public string LastName;
        }

      对于类和结构,都使用关键字New来声明实例:这个关键字创建对象并对其进行初始化。大多数情况下,类要比结构常用的多。

    PhoneCustomer myCustomer1 = new PhoneCustomer();
    PhoneCustomerStruct myCustomer2 = new PhoneCustomerStruct();
  • 相关阅读:
    数据库回滚解决删除数据库出错
    教大家支付宝抢红包
    MySql 连接字符串
    搭建Git服务器
    队列的顺序存储结构
    栈的应用---递归
    栈的链式存储结构及应用(C、Java代码)
    栈的顺序存储结构及应用(C、Java代码)
    静态链表、循环链表、双向链表(C代码实现)
    线性表的链式存储结构(Java代码实现)
  • 原文地址:https://www.cnblogs.com/dyf96966/p/5774536.html
Copyright © 2011-2022 走看看