CH15_部分类
本章目标
部分类 在C#语言中提供了一个部分类,正如字面上的意思,它用于表示一个类中的一部分。
一个类可以由多个部分类构成。
语法 1 访问修饰符 修饰符 partial class 类名{……}
在这里,partial 即为定义部分类的关键字。部分类主要用于当一个类中的内容较多时将相似类中的内容拆分到不同的类中,并且部分类的名称必须相同。
使用 案例1 : 定义名为 Course 的类,分别使用两个部分类实现定义课程属性并输出的操作。在一个部分类中设定课程的属性,在一个部分类中定义方法输出课程的属性。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 public partial class Course { public int Id { get ; set ; } public string Name { get ; set ; } public double Points { get ; set ; } } public partial class Course { public void PrintCoures () { Console.WriteLine("课程编号:" + Id); Console.WriteLine("课程名称:" + Name); Console.WriteLine("课程学分:" + Points); } }
1 2 3 4 5 6 7 8 9 static void Main (string [] args ){ Course course = new Course(); course.Id = 1001 ; course.Name = "C#部分类" ; course.Points = 3 ; course.PrintCoures(); }
案例2 :WinForm项目中,设计代码与逻辑代码分离。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 namespace Demo { partial class Form1 { private System.ComponentModel.IContainer components = null ; protected override void Dispose (bool disposing ) { if (disposing && (components != null )) { components.Dispose(); } base .Dispose(disposing); } #region Windows 窗体设计器生成的代码 private void InitializeComponent () { this .button1 = new System.Windows.Forms.Button(); this .SuspendLayout(); this .button1.Location = new System.Drawing.Point(283 , 188 ); this .button1.Name = "button1" ; this .button1.Size = new System.Drawing.Size(75 , 23 ); this .button1.TabIndex = 0 ; this .button1.Text = "button1" ; this .button1.UseVisualStyleBackColor = true ; this .button1.Click += new System.EventHandler(this .button1_Click); this .AutoScaleDimensions = new System.Drawing.SizeF(6F , 12F ); this .AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this .ClientSize = new System.Drawing.Size(800 , 450 ); this .Controls.Add(this .button1); this .Name = "Form1" ; this .Text = "Form1" ; this .ResumeLayout(false ); } #endregion private System.Windows.Forms.Button button1; } }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.Forms;namespace Demo { public partial class Form1 : Form { public Form1 () { InitializeComponent(); } private void button1_Click (object sender, EventArgs e ) { MessageBox.Show("Test" ); } } }
课后作业 1.略