差别
这里会显示出您选择的修订版和当前版本之间的差别。
| 后一修订版 | 前一修订版 | ||
| csharp:代码抽离 [2025/11/27 12:49] – 创建 张叶安 | csharp:代码抽离 [2025/11/27 12:51] (当前版本) – [文件 [程序打包引用]] 张叶安 | ||
|---|---|---|---|
| 行 1: | 行 1: | ||
| - | ====== | + | ====== 代码抽离 (Code Extraction) ====== |
| **核心概念**: | **核心概念**: | ||
| 行 5: | 行 5: | ||
| **代码抽离**就是将不同功能的代码提取出来,放入单独的类(Class)或单独的项目(类库 DLL)中。 | **代码抽离**就是将不同功能的代码提取出来,放入单独的类(Class)或单独的项目(类库 DLL)中。 | ||
| - | ===== 100-1:创建一个次类 ===== | + | ===== 创建一个次类 ===== |
| 在同一个项目中,我们可以通过添加新的类文件来分离代码。 | 在同一个项目中,我们可以通过添加新的类文件来分离代码。 | ||
| 行 35: | 行 35: | ||
| </ | </ | ||
| - | ===== 100-2:主类中调用次类 ===== | + | ===== 主类中调用次类 ===== |
| 在主程序(`Program.cs`)中,要使用上面创建的类,通常需要**实例化**(创建对象)。 | 在主程序(`Program.cs`)中,要使用上面创建的类,通常需要**实例化**(创建对象)。 | ||
| 行 67: | 行 67: | ||
| </ | </ | ||
| - | ===== 100-3:主类中直接使用次类变量 (Static) ===== | + | ===== 主类中直接使用次类变量 (Static) ===== |
| 如果次类中的变量或方法被 `static` (静态) 关键字修饰,则在主类中**无需实例化**,可以直接通过**类名**点出来使用。 | 如果次类中的变量或方法被 `static` (静态) 关键字修饰,则在主类中**无需实例化**,可以直接通过**类名**点出来使用。 | ||
| 行 102: | 行 102: | ||
| </ | </ | ||
| - | ===== 100-4:DLL | + | ===== 文件 [程序打包引用] ===== |
| **概念类比**: | **概念类比**: | ||
| 行 110: | 行 110: | ||
| * 其他程序导入这个文件,就可以直接使用里面的功能,而不需要知道里面的源代码。 | * 其他程序导入这个文件,就可以直接使用里面的功能,而不需要知道里面的源代码。 | ||
| - | <note important> | + | |
| **注意:** DLL 文件本质就是**类库**文件。 | **注意:** DLL 文件本质就是**类库**文件。 | ||
| 在编写类库时,**类 (class)** 和 **字段/ | 在编写类库时,**类 (class)** 和 **字段/ | ||
| - | </ | ||
| - | ==== 100-4-1:创建类库文件及程序 ==== | + | |
| + | ==== 创建类库文件及程序 ==== | ||
| **操作步骤:** | **操作步骤:** | ||
| 行 149: | 行 149: | ||
| - 找到生成的 **`DllTestDemo.dll`** 文件。 | - 找到生成的 **`DllTestDemo.dll`** 文件。 | ||
| - | ==== 100-4-3:主程序添加引用 DLL 文件 ==== | + | ==== 主程序添加引用 DLL 文件 ==== |
| 如果一个项目使用了 DLL 文件,单独把生成的 `.exe` 放到桌面是不能运行的,必须把 `.dll` 和 `.exe` 放在一起。 | 如果一个项目使用了 DLL 文件,单独把生成的 `.exe` 放到桌面是不能运行的,必须把 `.dll` 和 `.exe` 放在一起。 | ||