C#,入门教程(15)——类(class)的基础知识

上一篇:

C#,入门教程(14)------字符串与其他数据类型的转换https://blog.csdn.net/beijinghorn/article/details/124004562

物以类聚,凡物必类。

类的使用,须遵循几个简单的原则:

(1)能类则类,留有余地。

(2)凡数据体及其集合,必写为类;

(3)凡类,必独立文件;

一、类之定义

类class实际上可以理解为"复合信息"。

class 的复合性,就是指class既包括数据,也包括对数据的处理方法(算法)。

类的定义语法:

cs 复制代码
访问修饰词(public/private) 修饰符(static/abstract/sealed) class 类名字
{
    // 字段(或称为属性,存储数据)
    访问修饰词(public/private) 修饰符(static) 数据类型(如:int) 属性名 { get; set; } = 初值;

    // 函数(或称为方法,处理数据)
    访问修饰词(public/private) 修饰符(static) 数据类型(如:int) 函数名(参数列表)
    {
        ;
    }
}

class的实例

cs 复制代码
public class PersonInfo
{
	/// <summary>
	/// 编码
	/// </summary>
	public int Id { get; set; } = 0;

	/// <summary>
	/// 姓名
	/// </summary>
	public string Name { get; set; } = "";

	/// <summary>
	/// 姓名的小写
	/// </summary>
	/// <returns></returns>
    public string LowName()
    {
        return Name.ToLower();
    }

	/// <summary>
	/// 重载ToString方法
	/// </summary>
	/// <returns></returns>
	public override string ToString()
	{
		//return base.ToString();
		return Id + ":" + Name;
	}
}

二、类的属性(值)

传统的属性定义,放弃!

cs 复制代码
// 不好的写法!坚决放弃!
private int _Id = 0;
public int Id
{
    get 
    {
        return _Id;
    }
    set
    {
        _Id = value;
    }
}

好的写法!

cs 复制代码
/// <summary>
/// 节点的序号,在数组中的位置
/// </summary>
public int Id { get; set; } = 0;

三、类的注释

1、概要注释summary

C# 与 Visual Studio 的概要 XML 注释的完美结合是软件工程的伟大创举,大大提高了应用持续的开发效率。summary 很重要!这是工程应用 的必需品!

(1)summary注释信息的自动创建

自动添加 summary 的方法(属性、函数一样)。

属性的summary相对简单。函数的summary将自动添加 参数名、返回值等。

cs 复制代码
/// <summary>
/// 按奖项简称(ssq)查询奖项信息
/// </summary>
/// <param name="name"></param>
/// <returns></returns>
public static GameInfo FindByName(string name)
{
	if (hash_name[name.ToLower()] != null)
	{
		return (GameInfo)hash_name[name.ToLower()];
	}
	return new GameInfo();
}

(2)summary 的作用

a、编写持续 鼠标停留 在 类、函数、属性的上面时,自动显示这些注释信息。

者对于阅读、理解与使用相关程序极为便利!

b、在 类、函数、属性 上面自动显示被使用的次数;点击可以看到使用场合的基本信息!

真是天才设计!

2、get ; set; 很重要!

高效率开发的手段!

可以编写单独的 get 与 set 方法:

cs 复制代码
public int Id
{
    set { Id = value + 1000000; }
    get { return Id; }
}

主要用于输入数据的检查等。

四、类的方法(函数)

自从有了高级编程语言,函数就如同"砖块之于建筑"。

类内的,主要用于处理类属性(字段)数据的函数Function,也称为方法Method。

五、类的应用

你可以简单地把类看成是一种数据类型。

cs 复制代码
// 定义
public class MyClass
{
    public int Id { get; set; } = 0;
    public string Name { get; set; } = "";
}

// 使用
MyClass oneMember = new MyClass();
// 数组
MyClass[] arrayofMember = new MyClass[10];
// 列表
List<MyClass> listMember = new List<MyClass>();

而类的每个实例(实例就是new 之后创建的类一个样本!)都拥有类定义的全部可访问属性、方法。

记得 new 哦!

下一篇:

C#,入门教程(16)------可变数据类型(var)的基础知识与使用禁忌https://blog.csdn.net/beijinghorn/article/details/124032216

相关推荐
向宇it1 小时前
【unity小技巧】unity 什么是反射?反射的作用?反射的使用场景?反射的缺点?常用的反射操作?反射常见示例
开发语言·游戏·unity·c#·游戏引擎
九鼎科技-Leo1 小时前
什么是 WPF 中的依赖属性?有什么作用?
windows·c#·.net·wpf
Heaphaestus,RC2 小时前
【Unity3D】获取 GameObject 的完整层级结构
unity·c#
Swift社区2 小时前
LeetCode - #139 单词拆分
算法·leetcode·职场和发展
baivfhpwxf20232 小时前
C# 5000 转16进制 字节(激光器串口通讯生成指定格式命令)
开发语言·c#
直裾3 小时前
Scala全文单词统计
开发语言·c#·scala
Kent_J_Truman3 小时前
greater<>() 、less<>()及运算符 < 重载在排序和堆中的使用
算法
IT 青年3 小时前
数据结构 (1)基本概念和术语
数据结构·算法
Dong雨4 小时前
力扣hot100-->栈/单调栈
算法·leetcode·职场和发展
SoraLuna4 小时前
「Mac玩转仓颉内测版24」基础篇4 - 浮点类型详解
开发语言·算法·macos·cangjie