chapter 2/3 C#核心、对象和类型
来源:互联网 发布:龙之谷数据库怎么修改 编辑:程序博客网 时间:2024/05/16 10:05
关注的主要是C#与C++的不同点或者新增加的特性。
chapter 2 核心C#
1、初始化:方法的局部变量使用前必须初始化;类或者结构中的字段如果没有显式的初始化,默认构造函数会把字段初始化为标准的默认值(引用类型为空类型,数据类型为0)。
2、类型推断(type inference):关键字var。
3、局部变量的作用域冲突:同一方法中,循环里的局部变量不能隐藏方法中的同名局部变量(区别于C++)。
4、值类型和引用类型:值类型存储在栈中,引用类型存储在托管堆中(即堆中)。
5、decimal类型
6、预定义的引用类型:object/string;虽然string是一个引用类型,但当把字符串赋值时 ,在内存中会得到同一字符串的两个引用。
7、switch...case:禁止了所有case中失败的条件。
8、foreach(var temp in arrayOfInts):与for相比,省略了求集合的范围,但foreach循环不能改变集合中各项的值。
9、Main():方法必须是类或者结构的静态方法,返回类型必须是int或void。
10、预编译:#warning/#error ,#region/#endregion。
11、标识符:可以用Unicode字符,如:int 学生人数 = 48。
12、命名约定:Pascal大小写形式/camel大小写形式。
chapter 3 对象和类型
1、类的数据成员包括:字段,常量和事件成员;函数成员包括:方法,属性,构造函数,finalizer,运算符,索引器。
2、给方法传递参数:在C#中,默认的传参方式是值传递,利用ref关键字来指定按引用传递。对于复杂的数据结构,按引用传递的效率更高。
out关键字:传递的参数可以不初始化且 该变量通过引用传递。
3、重载:两个方法不能仅根据参数是声明为ref还是out来实现重载。
4、属性:一对方法或一对方法,在用户角度,它是一个字段。只读/只写/自动实现的属性。
5、构造函数:默认构造函数把没有初始化的字段初始化为标准的默认值(引用类型为空引用,值类型为0,bool为false),区别:C++默认构造函数对内置类型并不初始化。
静态构造函数:初始化静态字段,静态构造函数只能访问类的静态成员,不能访问类的实例成员;静态构造函数在加载类时执行,实例构造函数在创建实例时执行。当然,实例函数可以访问静态字段。
在构造函数中调用其他构造函数:利用this和base关键值。
静态类:如果类只包含静态的方法和属性,类就是静态的。在功能上于私有静态构造函数创建的类相同,不能创建静态类的实例。
6、只读字段:readonly,在运行时初始化;const,编译时初始化。
7、结构:不支持继承;总是提供一个无参的默认构造函数,并禁止定义无参数数的构造函数。
- chapter 2/3 C#核心、对象和类型
- C# 对象和类型
- C# 对象和类型
- 2.C#对象和类型
- [连载]C#程序设计(04)--- C#核心编程-2 --- 语言元素、类型和变量
- Chapter 2.变量和类型
- chapter 3: 内核对象
- C#基础(二)对象和类型
- C#第三章 对象和类型
- c#基础 之对象和类型
- C#高级编程:对象和类型
- C# 高级编程 对象和类型
- C++ primer 5 笔记3 chapter 2 变量和基本类型(2.4~2.6)
- C++ Primer ----Chapter 2 变量和基本类型
- C程序设计语言 chapter 2 类型 运算符和表达式
- C++ Primer 随笔 Chapter 2 变量和基本类型
- 『C++ Primer学习笔记』Chapter 3——string对象、vector对象以及数组的配套类型,C风格字符串问题和处理区别
- 2、对象和类型
- 图
- 备份:Android常用到URI及其示例
- 一种运动区域提取算法及Matlab实现
- C# 一个简单的多线程例子
- Android 上的 10 款 Web 开发应用工具
- chapter 2/3 C#核心、对象和类型
- 搜索中的排序优化
- 纯新手在写servlet程序时javax.servlet包找不到的解决方案
- makefile复习
- windows server 2003的安装
- 立方体自动拼图软件(代码、注释、输出效果)
- android 程序错误处理全局处理
- 子集构造 集合的子集合
- iphone(objective-c)相当于j2me的drawRegion方法 截取部分图片显示到指定位置