学习C#只需一个系列(二)—— 类和结构

类和结构是.NET通用类型系统中的两种基本构造,因此它们的重要性也就可想而知了。本文章将详细的介绍类的定义,结构的定义,类和结构的相同点与不同点,两者的声明格式。
摘要由CSDN通过智能技术生成

系列文章目录

学习C#只需一个系列—— 快速入门C#

学习C#只需一个系列(一)—— C#导论

学习C#只需一个系列(二)—— 类和结构


前言

类和结构是.NET通用类型系统中的两种基本构造,因此它们的重要性也就可想而知了。本文章将详细的介绍类的定义,结构的定义,类和结构的相同点与不同点,两者的声明格式。如果有任何说的不对的地方,请在评论区留言或私聊。

一、定义

类是什么?

既然类在C#中占有及其重要的地位,那我们要先知道类的定义,简单来说,就是类是什么东西?

先来看看微软官方对于类的定义:

1.本质上是一种数据结构,其中封装了同属一个逻辑单元的一组数据和行为。 数据和行为是类或结构的成员,包括方法、属性和事件等。

2.类或结构声明类似于一张蓝图,用于在运行时创建实例或对象。

3.类是引用类型。 创建类的对象后,向其分配对象的变量仅保留对相应内存的引用。 将对象引用分配给新变量后,新变量会引用原始对象。 通过一个变量所做的更改将反映在另一个变量中,因为它们引用相同的数据。

这是从微软文档上节选的对类的定义,可以看到类和结构是密不可分的,它们有很多相似的地方,但也有不同的地方,暂且先抛开这些抽象的理论。

有些人遇到这样的文档就会觉得头大,以下是我看文档的一些经验和总结。看到任意一篇文档基本都可以用4步解决。

  1. 根据名称从大段的文字中找到你所需要的部分。比如说我们要找的定义,那我们就只找它。
  2. 根据顺序将找到的话分成一个个小段。这步非常简单,只要像上面那样将找到的内容一一罗列出来就行了。如果找到的段落很长,那么你可能需要自己将它分个段落。
  3. 从每一小段中找到关键的字或词,并标记一下。像我在上文中一样,将关键字标红即可。如果实在不会找,总结性的语句一般会在段落的开头或结尾,这样一样也可以找到关键的段落。
  4. 总结,用自己的话将关键字组织起来就可以啦~~。

现在,我们来总结一下,

  • 类是一种数据类型,是一种引用类型的数据类型。
  • 类是一个蓝图,用来封装了一个或多个成员
  • 类仅在运行时,才会创建实例或对象。

如果你也想尝试一下自己总结,可以点击下面的链接。可以用我提供的方法试试,熟悉之后你可能会找到属于自己的方法。每个人应该有自己的记忆和理解方法,所以不必拘泥于别人的定义,甚至是官方的,这只是一种“参考答案”。你只需要在自己的总结上添加,而不是替换全部的内容,否定原来的答案,因为定义是人赋予的,没有哪个定义是本身就存在的,就正确的。

微软文档中对类的定义

结构是什么?

一样先来看看微软的定义:

1.本质上是一种数据结构,其中封装了同属一个逻辑单元的一组数据和行为。 数据和行为是类或结构的成员,包括方法、属性和事件等。

2.类或结构声明类似于一张蓝图,用于在运行时创建实例或对象。

3.结构是值类型。 创建结构时,向其分配结构的变量保留结构的实际数据。 将结构分配给新变量时,会复制结构。 因此,新变量和原始变量包含相同数据的副本(共两个)。 对一个副本所做的更改不会影响另一个副本。

结构和类在1,2两点上完全一致,这会造成很多初学者觉得,既然这两个东西一样为什么要设计两个呢。这一点将在之后进行讲解,现在让我们来总结一下结构的定义,

  • 结构是一种数据类型,是一种值类型的数据类型。
  • 结构也是一张蓝图,可以封装一个或多个成员
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值