迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 >

在 C# 中将一个类包含到另一个类中

作者:迹忆客 最近更新:2024/02/01 浏览次数:

在本教程中,你将学习在 C# 中将一个类包含到另一个类中的不同方法。作为用户定义的蓝图或原型的类包含可以在另一个类中调用的对象和方法。

在另一个类中包含一个类允许一个类调用另一个类的方法和对象。此功能使用户能够在技术上对类进行分组并创建更具可读性和可维护性的代码。


在 C# 中使用 using <namespace> 来将一个类包含在另一个类中

C# 中的命名空间是按逻辑排列的类、结构、接口、枚举或委托。C# 中的命名空间可以嵌套,这意味着你可以定义一个类并将其包含在另一个类中。

特定命名空间中的类和另一个 .cs 文件中的类可以通过 using <namespace>; 调用。将一个类的成员定义为另一个类时,可以使用 dot(.) 运算符访问,例如 using <namespace>.<method>

// WelcomeClass.cs

namespace SubClassNamS {
  public class WelcomeClass {
    public static void Welcome() {
      // To show a message box when this method from `WelcomeClass` will be called by another class
      MessageBox.Show("Hello World!", "Test Subject", MessageBoxButtons.OK,
                      MessageBoxIcon.Information);
    }
  }
}

C# 项目中的 WelcomeClass 类是 WelcomeClass.cs 文件的一部分。它包含一个 Welcome() 方法。

命名空间 SubClassNamS 是对此类的引用,你可以使用它来将其包含在另一个类中。

Form1.cs 是 C# 中的一个表单,它只包含一个 button1 按钮。WelcomeClass.csForm1.cs 是同一个 C# 项目的一部分,WelcomeClass.cs 类可以由 Form1.cs 中的类使用命名空间调用。

// Form1.cs

// Use `using` Namespace of another class from a different file
using static SubClassNamS.WelcomeClass;

namespace IncludeClass {
  public partial class Form1 : Form {
    public Form1() {
      InitializeComponent();
    }

    private void Form1_Load(object sender, EventArgs e) {}

    // Button `Button1` click event
    private void button1_Click(object sender, EventArgs e) {
      // No need to mention `WelcomeClass` here
      Welcome();
    }
  }
}

包括 SubClassNamS.WelcomeClass 使我们能够从 SubClassNamS 命名空间访问 WelcomeClass

此方法通过在 C# 中使用命名空间引入其方法和成员,帮助你将 WelcomeClass 类导入或包含到 Form1 类中。


在 C# 中使用继承将一个类包含到另一个类中

如果两个类来自 C# 中的同一个 .cs 文件,我们可以简单地使用 [class].[method](); 将一个类包含到另一个类中。可以使用继承将方法和元素从一个类引入另一个类。

类继承的概念包括一个 Derived 或从另一个称为 Base 或父类的类继承的子类。继承使导入类变得棘手,但使我们能够通过仅调用父类来利用两个类的方法。

using System;

// Parent Class
class Rocket {
  public string Type = "Rocket";
  public void bang() {
    Console.WriteLine("Boom, Boom!");
  }
}

// Child Class
class Celebration : Rocket {
  public string RocketModel = "HappyJones";
}

// Main program
class Program {
  static void Main(string[] args) {
    Celebration Air = new Celebration();
    Air.bang();
    Console.WriteLine(Air.Type + ": " + Air.RocketModel);
  }
}

输出:

Boom, Boom!
Rocket: HappyJones

创建 Air 作为 Celebration 类的对象,它可以访问 RocketCelebration 类的元素。在 C# 中,派生类中的 Air 对象有助于使用继承将两个不同的类导入 Program 类。

如果两个类都来自同一个命名空间,则不需要 import 语句或 using 命名空间。将一个类包含到另一个类中的最简单方法是创建一个 TecClass 类的实例并从 MainClass 类调用其成员函数。

using System;

public class TecClass {
  public static void CallMethod() {
    Console.WriteLine("Hello World");
  }
}

class MainClass {
  public static void Main(string[] args) {
    TecClass.CallMethod();
  }
}

输出:

Hello World

将一个类包含到另一个类中的最优化方法是为一个类创建一个单独的 .cs 文件并通过 using <namespace>; 调用它。使用 using static [namespace].[class]; 将类的静态成员包含到主类中。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

在 C# 中读取和写入 INI 文件

发布时间:2024/02/02 浏览次数:109 分类:编程语言

本教程教授如何在 C# 中读取和写入 INI 文件。本教程教授如何在 C# 中读取和写入 INI 文件。C# 中的 INI 文件是什么

在 C# 中从字哈希值符串计算 MD5 哈希值

发布时间:2024/02/02 浏览次数:178 分类:编程语言

本教程教授如何从 C# 中的字符串计算 MD5 哈希值。散列算法是用于将任意输入数据映射到固定大小散列的数学算法。它们用于多种用途,例如将数据存储在哈希值映射、密码验证、消息消化和加

用 C# 发送一个简单的 SSH 命令

发布时间:2024/02/02 浏览次数:161 分类:编程语言

本教程讨论如何在 C# 中发送简单的 SSH 命令。指南将讨论如何在 C# 中发送简单的 SSH 命令。在 C# 中发送一个简单的 SSH 命令

在 C# 中检查对象是否为空

发布时间:2024/02/02 浏览次数:100 分类:编程语言

在 C# 中,有两种主要方法可用于检查对象是否为 null:==运算符和 is 运算符。本教程将讨论在 C# 中检查对象是否为空的方法。在 C# 中使用 == 运算符检查空对象

在 C# 中删除对象

发布时间:2024/02/02 浏览次数:82 分类:编程语言

我们可以通过在 C# 中为其分配空值来删除用户定义类的对象。本教程将讨论在 C# 中删除用户定义类的对象的方法。在 C# 中通过给它分配 null 值来删除一个用户定义的类对象

在 C# 中将对象序列化为 XML

发布时间:2024/02/02 浏览次数:91 分类:编程语言

XmlSerializer 类可用于将类对象序列化为 C# 中的 XML 文件或字符串。本教程将讨论如何在 C# 中将类对象序列化为 XML 文件或字符串。

在 C# 中将 XML 反序列化为对象

发布时间:2024/02/02 浏览次数:135 分类:编程语言

在本教程中,通过示例了解将 xml 反序列化为 C# 对象的不同方法。使用 Visual Studio 的粘贴特殊功能、xsd 工具,并在 C# 中键入等效类。

Linux 上的开发配置 C#

发布时间:2024/02/02 浏览次数:192 分类:编程语言

本文介绍如何设置 C# 语言以在 Linux 上进行开发。如果你对在 Linux 中开发 C# 应用程序的方法感兴趣,这篇文章是专门为你准备的。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便