5.1.1 基本类型、值类型和对象
来源:互联网 发布:怎么知道自己淘宝等级 编辑:程序博客网 时间:2024/05/22 10:18
5.1.1 基本类型、值类型和对象
在 C# 中,我们可以使用基本值类型(例如,整数或字符),自定义值类型,用struct 关键字声明(例如,日期时间),和类。值类型和引用类型差别主要是基于它们的行为,但是,最显著的是,类是可变的。例如,字符串看起来像值类型,实际是引用类型,因为它是不可变的,意味着,只要通过使用不可变类型,我们几乎可以消除值和引用类型之间的差异。只在性能上有差别,行为是相同的。
我们还可以看到类型的复杂性。在 C# 中,这种区别并不是那么明显,因为,即使基本类型是标准的值类型,有方法,可以实现接口。不可变的值类型比起对象来,要简单得多,对象有有虚方法和可变的状态。
在函数语言中,我们从一组基本类型开始,可以构建复杂的类型,通过以不同的方式组合基本类型。这不同于面向对象的语言,在其中,根据基本类型,通过定义其状态,可以创建类型,并使用方法指定其行为。
函数的方法使整个类型系统相当容易,因为,在原理上,值类型和引用类型之间没有区别。另外,从简单类型过渡到复杂组成类型更平滑。在这个意义上,值是所有的基本类型,也是大多数简单的复合类型。复合类型太复杂而不能认为是一个值,要理解它,我们需要看看什么是数据。
- 5.1.1 基本类型、值类型和对象
- 5.1.1 基本类型、值类型和对象
- Java基本类型和对象类型 传值
- Java 基本类型 和 对象类型 比较
- java对象和基本类型
- java-值传递-基本类型/对象类型
- 对象、类型和值-1
- 基本类型值和引用类型值
- 基本类型和引用类型的值
- objective-c 基本类型和对象类型解读
- 基本引用类型和对象引用类型的区别
- 基本引用类型和对象引用类型区别
- 基本引用类型和对象引用类型区别
- 基本引用类型和对象引用类型区别
- 基本引用类型和对象引用类型区别
- Hibernate对象状态和基本映射类型
- Java 基本数据类型和对象类型
- 基本包装类型和内置对象
- BREW 中常用的按键代码
- Shared Data and Interapplication Communication
- 例详细介绍各种字符集编码转换问题 [转]
- hex
- 害人的asm包
- 5.1.1 基本类型、值类型和对象
- C#生成缩略图代码
- UNIX各平台下iostat详解
- HTTP代理如何正确处理Cookie
- HTTP代理如何正确处理Cookie(1)
- linux shell 写regex pattern 识别字符串的单词
- sqlserver 动态sql语句基本语法
- 已知某个学习小组3门课程的成绩如表,使用二维数组存放该学习小组的3门成绩,计算每个学生的平均成绩和该小组每门课程的平均成绩
- HTTP代理如何正确处理Cookie(2) - 转载(写的比较详细,并以实例讲解)