C#分部类的应用:记录学生信息

2024-02-21 10:28

本文主要是介绍C#分部类的应用:记录学生信息,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

一、分部类及其用途 

二、实例


        再发一个分部类的应用,巩固一下。

一、分部类及其用途 

        C#中的部分类也被称为分部类。

        C#中的部分类是一种将类的定义分成多个部分,每个部分都位于自己的文件中,然后在编译时合并在一起的机制。

        部分类的主要用途是将类的实现分散到多个文件中,从而使代码更易于管理和理解。这对于具有大量方法和属性的大型类特别有用,因为它可以使开发人员更轻松地导航和处理代码。

        部分类还可用于将类的实现与它的接口或公共API分离。例如,您可以将类的公共方法定义在一个部分中,而将私有方法和实现细节定义在另一个部分中。这可以帮助使类的公共API更清晰和易于使用,同时隐藏实现细节。

二、实例

        本实例主要使用分部类来分别记录学生的相关信息,然后在调用时,通过创建的分部类的对象分别为学生的相关属性赋值,并将赋予的值显示在对应的文本框中。

// 使用分部类记录学生信息
namespace _125
{public partial class Form1 : Form{private GroupBox? groupBox1;private TextBox? textBox8;private TextBox? textBox7;private TextBox? textBox6;private TextBox? textBox5;private TextBox? textBox4;private TextBox? textBox3;private TextBox? textBox2;private TextBox? textBox1;private Label? label8;private Label? label7;private Label? label6;private Label? label5;private Label? label4;private Label? label3;private Label? label2;private Label? label1;private Button? button1;public Form1(){InitializeComponent();StartPosition = FormStartPosition.CenterScreen;Load += Form1_Load;}private void Form1_Load(object? sender, EventArgs e){// // label1// label1 = new Label{AutoSize = true,Location = new Point(12, 24),Name = "label1",Size = new Size(68, 17),TabIndex = 0,Text = "学生编号:"};// // label2// label2 = new Label{AutoSize = true,Location = new Point(12, 54),Name = "label2",Size = new Size(68, 17),TabIndex = 1,Text = "学生年龄:"};// // label3// label3 = new Label{AutoSize = true,Location = new Point(12, 84),Name = "label3",Size = new Size(68, 17),TabIndex = 2,Text = "出生年月:"};// // label4// label4 = new Label{AutoSize = true,Location = new Point(12, 114),Name = "label4",Size = new Size(68, 17),TabIndex = 3,Text = "班      级:"};// // label5// label5 = new Label{AutoSize = true,Location = new Point(188, 24),Name = "label5",Size = new Size(68, 17),TabIndex = 4,Text = "学生姓名:"};// // label6// label6 = new Label{AutoSize = true,Location = new Point(188, 54),Name = "label6",Size = new Size(68, 17),TabIndex = 5,Text = "学生性别:"};// // label7// label7 = new Label{AutoSize = true,Location = new Point(188, 84),Name = "label7",Size = new Size(68, 17),TabIndex = 6,Text = "年      级:"};// // label8// label8 = new Label{AutoSize = true,Location = new Point(188, 114),Name = "label8",Size = new Size(68, 17),TabIndex = 7,Text = "班  主 任:"};// // textBox1// textBox1 = new TextBox{Location = new Point(75, 18),Name = "textBox1",Size = new Size(100, 23),TabIndex = 8};// // textBox2// textBox2 = new TextBox{Location = new Point(75, 48),Name = "textBox2",Size = new Size(100, 23),TabIndex = 9};// // textBox3// textBox3 = new TextBox{Location = new Point(75, 78),Name = "textBox3",Size = new Size(100, 23),TabIndex = 10};// // textBox4// textBox4 = new TextBox{Location = new Point(75, 108),Name = "textBox4",Size = new Size(100, 23),TabIndex = 11};// // textBox5// textBox5 = new TextBox{Location = new Point(248, 18),Name = "textBox5",Size = new Size(100, 23),TabIndex = 12};// // textBox6// textBox6 = new TextBox{Location = new Point(248, 48),Name = "textBox6",Size = new Size(100, 23),TabIndex = 13};// // textBox7// textBox7 = new TextBox{Location = new Point(248, 78),Name = "textBox7",Size = new Size(100, 23),TabIndex = 14};// // textBox8// textBox8 = new TextBox{Location = new Point(248, 108),Name = "textBox8",Size = new Size(100, 23),TabIndex = 15};// // groupBox1// groupBox1 = new GroupBox{Location = new Point(12, 12),Name = "groupBox1",Size = new Size(365, 142),TabIndex = 0,TabStop = false,Text = "学生信息"};groupBox1.Controls.Add(textBox8);groupBox1.Controls.Add(textBox7);groupBox1.Controls.Add(textBox6);groupBox1.Controls.Add(textBox5);groupBox1.Controls.Add(textBox4);groupBox1.Controls.Add(textBox3);groupBox1.Controls.Add(textBox2);groupBox1.Controls.Add(textBox1);groupBox1.Controls.Add(label8);groupBox1.Controls.Add(label7);groupBox1.Controls.Add(label6);groupBox1.Controls.Add(label5);groupBox1.Controls.Add(label4);groupBox1.Controls.Add(label3);groupBox1.Controls.Add(label2);groupBox1.Controls.Add(label1);groupBox1.SuspendLayout();// // button1// button1 = new Button{Location = new Point(302, 160),Name = "button1",Size = new Size(75, 23),TabIndex = 16,Text = "读取",UseVisualStyleBackColor = true};button1.Click += Button1_Click;// // Form1// AutoScaleDimensions = new SizeF(7F, 17F);AutoScaleMode = AutoScaleMode.Font;ClientSize = new Size(389, 186);Controls.Add(button1);Controls.Add(groupBox1);Name = "Form1";Text = "使用分部类记录学生信息";groupBox1.ResumeLayout(false);groupBox1.PerformLayout();LoadInfo();//加载学生信息}/// <summary>/// 为分部类中的各个属性赋值/// </summary>static void LoadInfo(){CommInfo.ID = "0001";CommInfo.Name = "刘同学";CommInfo.Sex = false;CommInfo.Age = 25;CommInfo.Birthday = Convert.ToDateTime("1985-04-25");CommInfo.Grade = 3;CommInfo.Class = 5;CommInfo.Director = "王老师";}/// <summary>/// 通过访问分部类中的属性显示学生信息/// </summary>private void Button1_Click(object? sender, EventArgs e){textBox1!.Text = CommInfo.ID!.ToString();textBox2!.Text = CommInfo.Age!.ToString();textBox3!.Text = CommInfo.Birthday!.ToString();textBox4!.Text = CommInfo.Class!.ToString();textBox5!.Text = CommInfo.Name!.ToString();textBox6!.Text = CommInfo.Sex.ToString();textBox7!.Text = CommInfo.Grade!.ToString();textBox8!.Text = CommInfo.Director!.ToString();}partial class CommInfo{/// <summary>/// 编号/// </summary>public static object? ID;/// <summary>/// 姓名/// </summary>public static object? Name;/// <summary>/// 性别/// </summary>static object? sex;public static object Sex{get{sex = sex switch{true => "男",_ => "女",};return sex;}set { sex = value; }}/// <summary>/// 年龄/// </summary>public static object? Age;/// <summary>/// 出生年月/// </summary>public static object? Birthday;}partial class CommInfo{/// <summary>/// 年级/// </summary>public static object? Grade;/// <summary>/// 班级/// </summary>public static object? Class;/// <summary>/// 班主任/// </summary>public static object? Director;}}
}

这篇关于C#分部类的应用:记录学生信息的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/731462

相关文章

5分钟获取deepseek api并搭建简易问答应用

《5分钟获取deepseekapi并搭建简易问答应用》本文主要介绍了5分钟获取deepseekapi并搭建简易问答应用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需... 目录1、获取api2、获取base_url和chat_model3、配置模型参数方法一:终端中临时将加

将sqlserver数据迁移到mysql的详细步骤记录

《将sqlserver数据迁移到mysql的详细步骤记录》:本文主要介绍将SQLServer数据迁移到MySQL的步骤,包括导出数据、转换数据格式和导入数据,通过示例和工具说明,帮助大家顺利完成... 目录前言一、导出SQL Server 数据二、转换数据格式为mysql兼容格式三、导入数据到MySQL数据

JavaScript中的isTrusted属性及其应用场景详解

《JavaScript中的isTrusted属性及其应用场景详解》在现代Web开发中,JavaScript是构建交互式应用的核心语言,随着前端技术的不断发展,开发者需要处理越来越多的复杂场景,例如事件... 目录引言一、问题背景二、isTrusted 属性的来源与作用1. isTrusted 的定义2. 为

C#提取PDF表单数据的实现流程

《C#提取PDF表单数据的实现流程》PDF表单是一种常见的数据收集工具,广泛应用于调查问卷、业务合同等场景,凭借出色的跨平台兼容性和标准化特点,PDF表单在各行各业中得到了广泛应用,本文将探讨如何使用... 目录引言使用工具C# 提取多个PDF表单域的数据C# 提取特定PDF表单域的数据引言PDF表单是一

关于rpc长连接与短连接的思考记录

《关于rpc长连接与短连接的思考记录》文章总结了RPC项目中长连接和短连接的处理方式,包括RPC和HTTP的长连接与短连接的区别、TCP的保活机制、客户端与服务器的连接模式及其利弊分析,文章强调了在实... 目录rpc项目中的长连接与短连接的思考什么是rpc项目中的长连接和短连接与tcp和http的长连接短

C#实现添加/替换/提取或删除Excel中的图片

《C#实现添加/替换/提取或删除Excel中的图片》在Excel中插入与数据相关的图片,能将关键数据或信息以更直观的方式呈现出来,使文档更加美观,下面我们来看看如何在C#中实现添加/替换/提取或删除E... 在Excandroidel中插入与数据相关的图片,能将关键数据或信息以更直观的方式呈现出来,使文档更

C#实现系统信息监控与获取功能

《C#实现系统信息监控与获取功能》在C#开发的众多应用场景中,获取系统信息以及监控用户操作有着广泛的用途,比如在系统性能优化工具中,需要实时读取CPU、GPU资源信息,本文将详细介绍如何使用C#来实现... 目录前言一、C# 监控键盘1. 原理与实现思路2. 代码实现二、读取 CPU、GPU 资源信息1.

Python调用另一个py文件并传递参数常见的方法及其应用场景

《Python调用另一个py文件并传递参数常见的方法及其应用场景》:本文主要介绍在Python中调用另一个py文件并传递参数的几种常见方法,包括使用import语句、exec函数、subproce... 目录前言1. 使用import语句1.1 基本用法1.2 导入特定函数1.3 处理文件路径2. 使用ex

Oracle查询优化之高效实现仅查询前10条记录的方法与实践

《Oracle查询优化之高效实现仅查询前10条记录的方法与实践》:本文主要介绍Oracle查询优化之高效实现仅查询前10条记录的相关资料,包括使用ROWNUM、ROW_NUMBER()函数、FET... 目录1. 使用 ROWNUM 查询2. 使用 ROW_NUMBER() 函数3. 使用 FETCH FI

在C#中获取端口号与系统信息的高效实践

《在C#中获取端口号与系统信息的高效实践》在现代软件开发中,尤其是系统管理、运维、监控和性能优化等场景中,了解计算机硬件和网络的状态至关重要,C#作为一种广泛应用的编程语言,提供了丰富的API来帮助开... 目录引言1. 获取端口号信息1.1 获取活动的 TCP 和 UDP 连接说明:应用场景:2. 获取硬