C#学习—类

简介: C#学习—类

C#是面向对象的,其与面向过程的最大不同就在于:类和对象。

类的定义:

访问修饰符(如:public) class 类名 {}

类的分类:

静态类(static)和非静态类(没有static即为非静态)

静态类不能被实例化,即不能使用new()来创建类的实例,不能被对象所访问,只能由类来访问。eg:Math类

同理:静态方法也不能被对象所调用,只有由类来调用。

类的组成:

字段、属性(一种特殊的方法)、方法(也叫函数)等

类的属性:

自动属性:public string Name {get;set;}

类的构造函数:

构造函数,是一种特殊的方法。主要用来在创建对象时初始化对象,如:Dashboard dashboard = new Dashboard();  

默认的构造函数为:public Dashboard(){},在编译时会自动生成;

也可以自己定义构造函数:


public Dashboard(string name) //方法名与类名相同
{
    this.Name = name;
}
//新建一个对象
Dashboard dashboard = new Dashboard("db")

自定义构造函数之后, 默认的构造函数将不会自动生成,当然也可以通过重载来新增。

重载:

在一个类中编辑多个同名方法,它们的参数列表不同,但实现步骤功能有相同点。

使得函数或者运算符等处理不同类型数据或接不同个数参数。

This关键字:

1、当在类的定义中有this时,则在实例化时,就代表当前对象本身;

2、消除歧义


相关文章
|
16天前
|
存储 C# 索引
C# 一分钟浅谈:数组与集合类的基本操作
【9月更文挑战第1天】本文详细介绍了C#中数组和集合类的基本操作,包括创建、访问、遍历及常见问题的解决方法。数组适用于固定长度的数据存储,而集合类如`List<T>`则提供了动态扩展的能力。文章通过示例代码展示了如何处理索引越界、数组长度不可变及集合容量不足等问题,并提供了解决方案。掌握这些基础知识可使程序更加高效和清晰。
53 2
|
9天前
|
Linux C# 开发者
Uno Platform 驱动的跨平台应用开发:从零开始的全方位资源指南与定制化学习路径规划,助您轻松上手并精通 C# 与 XAML 编程技巧,打造高效多端一致用户体验的移动与桌面应用程序
【9月更文挑战第8天】Uno Platform 的社区资源与学习路径推荐旨在为初学者和开发者提供全面指南,涵盖官方文档、GitHub 仓库及社区支持,助您掌握使用 C# 和 XAML 创建跨平台原生 UI 的技能。从官网入门教程到进阶技巧,再到活跃社区如 Discord,本指南带领您逐步深入了解 Uno Platform,并提供实用示例代码,帮助您在 Windows、iOS、Android、macOS、Linux 和 WebAssembly 等平台上高效开发。建议先熟悉 C# 和 XAML 基础,然后实践官方教程,研究 GitHub 示例项目,并积极参与社区讨论,不断提升技能。
28 2
|
15天前
|
C# 数据安全/隐私保护
C# 一分钟浅谈:类与对象的概念理解
【9月更文挑战第2天】本文从零开始详细介绍了C#中的类与对象概念。类作为一种自定义数据类型,定义了对象的属性和方法;对象则是类的实例,拥有独立的状态。通过具体代码示例,如定义 `Person` 类及其实例化过程,帮助读者更好地理解和应用这两个核心概念。此外,还总结了常见的问题及解决方法,为编写高质量的面向对象程序奠定基础。
15 2
|
1月前
|
C#
C#中的类和继承
C#中的类和继承
34 6
|
29天前
|
Java C# 索引
C# 面向对象编程(一)——类
C# 面向对象编程(一)——类
26 0
|
1月前
|
开发框架 .NET 编译器
C# 中的记录(record)类型和类(class)类型对比总结
C# 中的记录(record)类型和类(class)类型对比总结
|
1月前
|
开发框架 .NET API
C#/.NET/.NET Core推荐学习书籍(24年8月更新)
C#/.NET/.NET Core推荐学习书籍(24年8月更新)
|
3月前
|
开发框架 .NET 编译器
程序与技术分享:C#基础知识梳理系列三:C#类成员:常量、字段、属性
程序与技术分享:C#基础知识梳理系列三:C#类成员:常量、字段、属性
25 2
|
3月前
|
C#
C# 版本的 计时器类 精确到微秒 秒后保留一位小数 支持年月日时分秒带单位的输出
这篇2010年的文章是从别处搬运过来的,主要包含一个C#类`TimeCount`,该类有多个方法用于处理时间相关的计算。例如,`GetMaxYearCount`计算以毫秒为单位的最大年数,`GetCurrentTimeByMiliSec`将当前时间转换为毫秒,还有`SecondsToYYMMDDhhmmss`将秒数转换为年月日时分秒的字符串。此外,类中还包括一些辅助方法,如处理小数点后保留一位数字的`RemainOneFigureAfterDot`。
|
2月前
|
Dart 算法 JavaScript
C#数据结构与算法入门教程,值得收藏学习!
C#数据结构与算法入门教程,值得收藏学习!