定义类
在 C# 中,类是用于创建对象的蓝图。它定义了对象的数据和行为。通过定义类,你可以创建具有特定属性和方法的对象。
-- -------------------- ---- ------- ------ ----- ------ - -- -- ------ ------ ---- - ---- ---- - ------ --- --- - ---- ---- - -- ---- ------ ------------- ----- --- ---- - ---- - ----- --- - ---- - -- -- ------ ---- ----------- - ------------------------- ---------- ----- ----- - -
类的属性
属性是类的成员之一,用于存储类的状态信息。属性可以分为只读、只写和可读写的。使用属性可以控制对类数据成员的访问。
-- -------------------- ---- ------- ------ ----- --- - ------- ------ ------- -- ---- ------ ------ ----- - --- - ------ ------- - - -- ----- ------ ------ ----- - ---- ---- - -- ---- ------ --- ---- - --- - ----- - ------ - - -
类的构造函数
构造函数是用于初始化新创建的对象的特殊方法。每个类至少有一个构造函数。如果未显式定义构造函数,则编译器会自动添加一个默认构造函数。
-- -------------------- ---- ------- ------ ----- ------ - ------ ------ ---- - ---- ---- - -- ------ ------ -------- - - -- -------- ------ ------------- ----- - ---- - ----- - -
类的继承
在面向对象编程中,继承是一种机制,允许一个类(子类)继承另一个类(基类)的属性和方法。继承使得代码复用更加容易,并且有助于构建复杂的系统。
-- -------------------- ---- ------- -- -- ------ ----- ------ - ------ ------ ---- - ---- ---- - ------ ---- ----- - -------------------------- -------- - - -- -- ------ ----- --- - ------ - ------ ---- ------ - -------------------------- - - -- -- --- ----- - --- ------ ---------- - ----- ------------ -- ----- ----- ------------- -- -------
类的多态性
多态性是指不同类的对象对同一消息做出响应的能力。这种能力使我们可以通过一个接口来表示不同的类型。多态性通常与继承一起使用。
-- -------------------- ---- ------- ------ -------- ----- ----- - ------ -------- ------ ---------- - ------ ----- ------ - ----- - ------- ------ -------- ------ ------------- ------- - ------- - ------- - ------ -------- ------ --------- - ------ ------- - ------- - -------- - - ------ ----- --------- - ----- - ------- ------ ------- ------- ------ -------- ------ ---------------- ------ ------ ------- - ------ - ------ ------- - ------- - ------ -------- ------ --------- - ------ ------ - -------- - - -- -- ----- ------ - --- ---------- ----- --------- - --- ------------ --- ------------------------------------ -- ------- --------------------------------------- -- --------
类的抽象类
抽象类是一种不能实例化的类,它只能作为其他类的基类。抽象类可以包含抽象方法,这些方法没有实现,并且必须由派生类提供实现。
-- -------------------- ---- ------- ------ -------- ----- ------- - ------ -------- ---- -------- ------ ---- ------------- - ---------------------------- - - ------ ----- --- - ------- - ------ -------- ---- ------- - ----------------------------- - - -- -- --- ----- - --- ------ -------------------- --------------
类的接口
接口定义了一组方法和属性,但不提供它们的具体实现。实现接口的类必须提供接口中所有成员的具体实现。接口允许你为一组相关功能定义一个通用契约。
-- -------------------- ---- ------- ------ --------- --------- - ---- ------- ---- -------- ---- ------- - ------ ----- ----------- - --------- - ------ ---- ------ - ----------------------------- - ------ ---- ------- - ---------------------------- - ------ ---- ------ - ---------------------------- - - -- -- --------- ------ - --- -------------- -------------- --------------- --------------
类的静态成员
静态成员属于类本身而不是类的实例。静态成员可以用类名直接访问,而不需要创建类的实例。静态成员通常用于表示与类相关的全局状态或常量。
-- -------------------- ---- ------- ------ ----- --------- - ------ ------ -------- ------ -- - -------- - ------ ----- ------ - ------ ------ ------ - ---- ---- - ------ ------ --------- - ------ ------------ - ------ - ------- - - -- -- ------ ---- - ------------------ -- ------ ------------ ------------------------ -- -----------
类的密封类
密封类(sealed class)是一个不能被继承的类。使用 sealed 关键字标记的类不能被其他类继承。密封类通常用于那些不应该被扩展的类。
-- -------------------- ---- ------- ------ ------ ----- --------- - ------- ------ --------- ---------- ------- ----------- - - ------ ------ --------- -------- - --- - -- ---------- -- ----- - --------- - --- ------------ - ------ ---------- - - - -- -------------- -- ------ ----- ---------------- - --------- -- - -- -- -------- --------- -- -- -
类的嵌套类
嵌套类是在另一个类内部定义的类。嵌套类可以访问外部类的所有成员,包括私有成员。这使得嵌套类可以方便地封装一些与外部类相关的功能。
-- -------------------- ---- ------- ------ ----- ---------- - ------- --- ----- - --- ------ ----- ----------- - ------ ---- -------------------- ------ - ------------------------------------------- - - - -- -- ---------------------- ------ - --- ------------------------- -------------------- --------------
类的内部类
内部类是另一种类型的嵌套类,它与外部类的关系比普通嵌套类更紧密。内部类可以访问外部类的所有成员,甚至包括私有成员,并且其行为更像是外部类的一部分。
-- -------------------- ---- ------- ------ ----- ---------- - ------- --- ----- - --- ------ ----- ---------- - ------ ---- ----------- - ------------------------------------- - - - -- -- --------------------- ----- - --- ------------------------ ------------------ -- ------------
类的泛型类
泛型类允许你在定义类时指定类型参数,从而使得类可以处理多种数据类型。使用泛型类可以提高代码的重用性和类型安全性。
-- -------------------- ---- ------- ------ ----- -------------- - ------- --- ----- - --- ------- ------- --- ------ ------ ---- ----- ----- - ------------ - ----- -------- - ------ - ----------- ------ - ------ ------------- - - -- -- ---------------- ------- - --- ------------------- ---------------- ---------------- ------------------- ---------- - --- ---------------------- ------------------------ ------------------------ -------------------------------------- -- ----- ----------------------------------------- -- --------
以上内容涵盖了 C# 中类的基本概念和使用方法。希望这些示例和解释能帮助你更好地理解和应用 C# 类。