C# 构造函数:初始化对象的快捷方式

本文涉及的产品
对象存储 OSS,OSS 加速器 50 GB 1个月
简介: 构造函数用于初始化对象,与类同名、无返回值,支持重载。通过不同参数实现灵活初始化,如示例中创建学生对象并调用Study方法输出学习信息。

构造函数用于对象创建时初始化数据,与类同名,无返回值,支持重载(方便不同初始化场景)。
public class Student
{
// 属性
public string Name { get; set; }
public int Age { get; set; }
public string Grade { get; set; }

// 无参构造函数(默认存在,可显式定义)
public Student()
{
    Name = "未知姓名";
    Age = 0;
    Grade = "未知年级";
}

// 带参构造函数(快捷初始化)
public Student(string name, int age, string grade)
{
    Name = name;
    Age = age;
    Grade = grade;
}

public void Study()
{
    Console.WriteLine($"{Name}({Age}岁,{Grade})正在学习C#!");
}

}

// 调用构造函数创建对象
Student student2 = new Student("小红", 17, "高二");
student2.Study(); // 输出:小红(17岁,高二)正在学习C#!

Student student3 = new Student();
student3.Study(); // 输出:未知姓名(0岁,未知年级)正在学习C#!

相关文章
|
4月前
|
C#
C# 随机数生成:Random 类用法
Random类用于生成伪随机数,适用于游戏、验证码、测试等场景。通过静态实例避免重复创建,确保随机性。提供整数、小数、布尔值及指定长度的随机字符串生成方法,使用简便且高效。注意需复用实例防止种子重复导致随机数相同。
|
4月前
|
存储 算法 C#
C# 哈希值计算:MD5/SHA256 加密
本示例展示了C#中使用MD5和SHA256算法生成哈希值的方法,适用于密码加密与数据校验。MD5安全性较低,建议仅用于非敏感场景;密码存储推荐使用SHA256配合盐值以增强安全性。
|
4月前
|
C#
C# 实现简单的 AOP(面向切面编程)
通过反射与委托实现AOP,可在方法执行前后动态添加日志、计时等横切逻辑,提升代码复用性与可维护性。
|
4月前
|
JSON C# 数据格式
C# 实现简单的 HTTP 请求工具(POST 补充)
该代码实现了一个基于 HttpClient 的异步 HTTP POST 请求工具类,支持以 JSON 格式提交数据并反序列化响应结果,具备异常处理机制,适用于 .NET 环境下的轻量级网络请求操作。
|
4月前
|
C#
C# 实现发送邮件功能(SMTP)
通过SMTP协议实现邮件发送,支持文本与附件,需配置邮箱SMTP信息(如QQ邮箱授权码)。示例代码展示C#中如何使用SmtpClient发送邮件,适用于QQ、163、Gmail等主流邮箱服务。
|
4月前
|
网络协议 安全 C#
C# 实现基于 TCP 的简单聊天程序(服务端)
基于TcpListener实现TCP聊天服务器,监听指定端口,接收客户端连接并实时转发消息。支持多客户端并发通信,新连接自动加入广播列表,断开后自动移除,确保线程安全与稳定运行。
|
4月前
|
算法 C#
C# 实现字符串相似度计算(Levenshtein 算法)
介绍计算字符串编辑距离的算法,基于Levenshtein距离实现相似度分析,适用于搜索建议与拼写纠错,附C#代码示例。
|
4月前
|
存储 数据库连接 C#
C# 配置文件读取:App.config 用法
App.config用于存储程序配置(如数据库连接、接口地址),避免硬编码,提升可维护性。通过ConfigurationManager读取配置,支持字符串、整型、布尔值及连接字符串的获取,需引用System.Configuration程序集。
|
4月前
|
C#
C# 实现简单的定时任务工具
基于 `System.Timers.Timer` 实现定时任务,支持周期性与单次执行。通过封装 Timer 类,提供启动、停止功能,并包含异常处理,确保任务稳定运行,适用于后台定时操作场景。
|
4月前
|
C#
C# 实现图片压缩工具(基础版)
基于 System.Drawing 实现图片尺寸缩放与质量压缩,支持常见格式。通过计算缩放比例生成新图像,并调整压缩质量以减小文件大小。适用于 .NET 平台,需安装 System.Drawing.Common NuGet 包。