用户自定义类型

自定义类型

除 C# 内置的 16 种预定义类型外,开发者可自行创建用户自定义类型,一共分为 6 类:

  1. 类(class)类型
  2. 结构体(struct)类型
  3. 数组(array)类型
  4. 枚举(enum)类型
  5. 委托(delegate)类型
  6. 接口(interface)类型

需要通过类型声明来创建自定义类型

  • 要创建的类型种类
  • 新类型的名称
  • 该类型所有成员的声明(名称与定义)(数组、委托除外,二者无具名成员)

声明完成后,即可像使用预定义类型一样创建、使用该类型的对象。

预定义类型(内置类型),可以直接使用,直接实例化对象。而自定义类型,顾名思义是需要我们自己先声明好这个类型(创建图纸),然后再实例化对象。

例如:int/float等内置基础类型,开箱即用,无需提前定义,直接可以int age; float price; 这样使用。
而我们前面的Person这个自定义类型,我们需要:

第一步:声明(class Person {} 定义类型模板)

第二步:实例化(Person lucas = new Person (); 创建对象)

// 汽车类
public class Car
{
    // 1. 私有字段(底层存储数据)
    private string _brand;    // 牌子
    private string _color;    // 颜色

    // 2. 公有属性(对外暴露访问接口,可加校验逻辑)
    public string Brand
    {
        get { return _brand; }
        set
        {
            // 简单校验:品牌不能为空
            if (!string.IsNullOrEmpty(value))
                _brand = value;
            else
                Console.WriteLine("品牌名称不能为空!");
        }
    }

    public string Color
    {
        get { return _color; }
        set { _color = value; }
    }

    // 3. 开车的行为方法
    public void Drive()
    {
        Console.WriteLine($"一辆【{Color}】的【{Brand}】正在行驶中!");
    }
}Code language: C# (cs)

上面的例子是一个汽车类,有两个字段,字段是变量,用到内置的类型,用来真正存储数据的。还有两个属性public string Brand{} 和public string Color{}这两个本质是函数来,后面我们会讲到。还有一个public void Drive(){} 的函数成员。

这些自定义类型,我们后续会重点讲解。

Previous:
Next:

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注