C#学习笔记(五)
来源:互联网 发布:网络覆盖解决方案 编辑:程序博客网 时间:2024/05/16 10:59
1. 浅度复制和深度复制
简单的按照成员副职对象可以通过派生于System.Object的MemberwiseClone()方法来完成。这是一个受保护的方法,但很容易在对象上定义一个调用该方法的公共方法。这个方法提供的复制功能称为浅度复制。因为它没有考虑引用类型成员。因此,新对象中的引用成员就会指向与源对象中相同的成员对象,在许多情况下这并不理想。如果 要创建成员的新实例(复制值而不复制引用),此时需要使用深度复制。
2.
3. 方法定义中使用的关键字
virtual:方法可以重写
abstract:方法必须在非抽象的派生类中重写(只用于抽象类中)
override:方法重写了一个基类方法(如果方法被重写,就必须使用该关键字)
extern:方法定义放在其他地方
4. 接口的定义与类的定义不一样的地方
5. 部分类、部分方法partial
6. 封箱和拆箱
封箱是把值类型转换为System.Object类型,或者转换为由值类型实现的接口类型。拆箱是相反的过程。
7. 转换
(1) 重载运算符
隐式转换
ConvClass1 op1 = new ConvClass1();
ConvClass2 op2 = op1;
显式转换
ConvClass1 op1 = new ConvClass1();
ConvClass2 op2 = (ConvClass2)op1;
(2)as运算符使用下面的语法,把一种值类型转换为指定的引用类型
<operand> as <type>
这只适用于下列情况
<operand>的类型是<type>类型
<operand>可以隐式转换为<type>
<operand>可以封箱到<type>类型中
如果不能从<operand>转换为<type>,表达式的结果为null
- C#学习笔记(五)
- C#学习笔记(五)
- C#学习笔记(五)
- 学习杂物(五)c#学习笔记
- C#学习笔记五-HashTable
- c#学习笔记(五)struct
- C#学习笔记五---委托
- c#笔记(五)
- C#学习笔记(五)(Winform窗体)(一)
- C#学习笔记(五):类成员的定义
- C#和.NET基础知识——学习笔记(五)
- C# 学习笔记(五) ++/--运算符重载的意义
- c# 多线程学习笔记(五)读者写者问题
- C#学习笔记之五(ADO.net)
- C#学习笔记之五(ADO.net)
- C# 学习笔记五 高级控件
- C#学习笔记之五:集合
- imos 学习笔记五 抓拍 c#
- html与css笔记
- Linux内核裁剪的具体步骤 http://blog.chinaunix.net/uid-10429687-id-3977273.html
- c的free和c++的delete的区别
- 如何完善链接
- PAT(甲级)1040
- C#学习笔记(五)
- Java求二叉树的最大路径和
- HDU 4554 叛逆的小明(西山居挑战赛)
- PAT(甲级)1041
- test7.21
- Struts2标签之bean
- 网上看了篇文章关于多表连接的,感觉很好,记录下来,以便日后自己学习
- HDU - 1069 Monkey and Banana(DAG)
- Android面试题