.NET框架中的引用类型与值类型详解
需积分: 1 34 浏览量
更新于2024-08-23
收藏 1.67MB PPT 举报
"引用类型存储方式-北大青鸟6.0 .Net 第二章 理论ppt"
在.Net编程中,引用类型存储方式是对象在内存中的处理方式之一。引用类型不同于值类型,它们在内存中有不同的表现。值类型直接存储其实际值,而引用类型则存储对内存中对象的引用,也就是一个指向对象所在位置的指针。描述中的例子展示了引用类型的特性:
```csharp
se1
se1.Age = 18
```
这里创建了一个对象`se1`,并给它的`Age`属性赋值为18。`se1`存储的是对象的引用,而不是对象本身。
```csharp
引用类型存储对象的引用
se1
se2
se2 = se1
```
接着,创建了另一个引用`se2`,并将其设置为与`se1`相同的引用,这意味着`se2`和`se1`现在都指向同一个对象。
```csharp
se1
se2
se2.Age = 20
两个变量都发生变化
Age=18
Age=18
Age=20
```
当通过`se2`改变`Age`的值为20时,由于`se1`和`se2`引用的是同一对象,因此改变`se2`的`Age`属性会影响到`se1`,导致两者`Age`都变为20。这体现了引用类型的共享特性。
本章还涉及其他C#语言的关键概念:
1. **深入C#数据类型**:C#支持多种数据类型,包括值类型(如int、char)和引用类型(如类、接口)。值类型直接包含其值,而引用类型存储的是对象的地址。
2. **.NET框架结构**:包括公共语言运行时(CLR)和类库。CLR是.NET框架的核心,负责垃圾回收、类型安全和代码执行。
3. **VS2010快速引入命名空间**:可以通过“using”关键字快速引入所需命名空间,避免每次都完全指定类型名称。
4. **结构(Struct)**:结构是值类型,复制结构对象会创建其所有字段的副本。
5. **静态方法**:用`static`关键字标识的方法,属于类而不属于类的实例,可以直接通过类名调用。
本章的任务和目标旨在加深对类、对象、封装和方法调用的理解,并通过实践应用巩固这些概念。例如,绘制类图、实现项目经理评分功能、计算机编号分配以及投票器等,都是为了让学生能够熟练运用面向对象编程的思想。
此外,类的属性(如`Name`和`Age`)是类中封装数据的重要组成部分。`get`和`set`访问器提供了对字段的安全访问,可以进行数据验证。自动属性是C#的一个便捷特性,它允许编译器自动为属性生成私有字段,简化代码。例如,`public string Name { get; set; }`即为一个自动属性。
复习部分还提到了方法,它是类和对象行为的表示,包括参数、返回值和方法体。方法的定义和调用是编程中的核心操作,通过方法实现类的功能和逻辑。
2013-06-27 上传
点击了解资源详情
2013-06-05 上传
2013-06-05 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
顾阑
- 粉丝: 18
- 资源: 2万+
最新资源
- 前端协作项目:发布猜图游戏功能与待修复事项
- Spring框架REST服务开发实践指南
- ALU课设实现基础与高级运算功能
- 深入了解STK:C++音频信号处理综合工具套件
- 华中科技大学电信学院软件无线电实验资料汇总
- CGSN数据解析与集成验证工具集:Python和Shell脚本
- Java实现的远程视频会议系统开发教程
- Change-OEM: 用Java修改Windows OEM信息与Logo
- cmnd:文本到远程API的桥接平台开发
- 解决BIOS刷写错误28:PRR.exe的应用与效果
- 深度学习对抗攻击库:adversarial_robustness_toolbox 1.10.0
- Win7系统CP2102驱动下载与安装指南
- 深入理解Java中的函数式编程技巧
- GY-906 MLX90614ESF传感器模块温度采集应用资料
- Adversarial Robustness Toolbox 1.15.1 工具包安装教程
- GNU Radio的供应商中立SDR开发包:gr-sdr介绍