C# 学习笔记三
2015-08-11 16:38
218 查看
1、attribute属性:attribute属于.NET特有标签
2、关于C#异常的处理:System.Exception 是C#语言中所有异常的基类
异常的捕获 throw、try-catch模式
throw new InvalisStudentIsException(id)
之后try{
}
catch(InvalisStudentIsException ex){
Console.WriteLine(ex.Message)
}
3、object类:object类是.net类层级结构中的根节点。
(1)Object类定义了五个public方法,两个最常用的是Equals和ToString
hint:用==测试相等时,如果两者是普通对象引用,则检查是否引用了同一内存对象,但如果是string类型则判断值是否相等
(2)ToString用法:object中将ToString方法声明为可重载,重载public override string ToString()
其他的object方法,GetType GetHashCode、referenceEquals
4、Array类:Array的方法Clear、Reverse、Sort排序、GetValue(),SetValue() 、GetLength()
5、ArrayList类:ArrayList初始构造为16个元素,当数目到达上限后自动翻倍
遍历ArrayList可使用for循环或者采用System.Collections提供的枚举器(ENUMERATOR)
枚举器的的重要方法:
.MoveNext(),.Reset()
以及Current的property
6、HashTable:Hashtable在对象引用时一定要进行类型转换,而且它的枚举在遍历的时候不能保证顺序
7、ICollection的copy方法将其中内容拷贝到array中,在foreach循环中不能对循环变量重新赋值,但是可以对元对象的字段进行操作。
8、C#的初始化:局部变量在明确初始化之前都看做未初始化,类的字段则自动初始化为等价于0的值。
9、ReadLine()读取键盘数据 直至回车按下
10、this的重要作用之一是重用构造器 public student(string n,string s):this(n)可用于代码重用
11、C#的命名空间:
使用string的三种方式:
1、using System
String a;//直接使用类名
2、不加using
使用System.String s;
3、不加using
直接使用别名 string
string 类型有两类重要的property,length和位置索引
12、C#的继承关系:子类负载基类的函数时,避免代码的重复,可使用base.函数名来调用父类函数
构造器的负载直接在函数名后面加上:base(n,s)会自动调用,基类构造器代码先执行
13、方法隐藏技术:父类中有public void a()
子类中使用public new void a()
覆盖时执行哪个函数具体由声明类型确定,而多态执行函数由对象的实际类型决定,见P452
抽象方法abstract不能被隐藏
14、获得对象的类名的方法:p.GetType().FullName == “student”或者:P.GetType()==typeof(Student)
15、C#的对象自动删除,当对象不再引用时,自动收回内存。
16、ListBox没有AutoSize的选项,必须明确的设置高度和宽度
dekegate声明委托插件
2、关于C#异常的处理:System.Exception 是C#语言中所有异常的基类
异常的捕获 throw、try-catch模式
throw new InvalisStudentIsException(id)
之后try{
}
catch(InvalisStudentIsException ex){
Console.WriteLine(ex.Message)
}
3、object类:object类是.net类层级结构中的根节点。
(1)Object类定义了五个public方法,两个最常用的是Equals和ToString
hint:用==测试相等时,如果两者是普通对象引用,则检查是否引用了同一内存对象,但如果是string类型则判断值是否相等
(2)ToString用法:object中将ToString方法声明为可重载,重载public override string ToString()
其他的object方法,GetType GetHashCode、referenceEquals
4、Array类:Array的方法Clear、Reverse、Sort排序、GetValue(),SetValue() 、GetLength()
5、ArrayList类:ArrayList初始构造为16个元素,当数目到达上限后自动翻倍
遍历ArrayList可使用for循环或者采用System.Collections提供的枚举器(ENUMERATOR)
枚举器的的重要方法:
.MoveNext(),.Reset()
以及Current的property
6、HashTable:Hashtable在对象引用时一定要进行类型转换,而且它的枚举在遍历的时候不能保证顺序
7、ICollection的copy方法将其中内容拷贝到array中,在foreach循环中不能对循环变量重新赋值,但是可以对元对象的字段进行操作。
8、C#的初始化:局部变量在明确初始化之前都看做未初始化,类的字段则自动初始化为等价于0的值。
9、ReadLine()读取键盘数据 直至回车按下
10、this的重要作用之一是重用构造器 public student(string n,string s):this(n)可用于代码重用
11、C#的命名空间:
使用string的三种方式:
1、using System
String a;//直接使用类名
2、不加using
使用System.String s;
3、不加using
直接使用别名 string
string 类型有两类重要的property,length和位置索引
12、C#的继承关系:子类负载基类的函数时,避免代码的重复,可使用base.函数名来调用父类函数
构造器的负载直接在函数名后面加上:base(n,s)会自动调用,基类构造器代码先执行
13、方法隐藏技术:父类中有public void a()
子类中使用public new void a()
覆盖时执行哪个函数具体由声明类型确定,而多态执行函数由对象的实际类型决定,见P452
抽象方法abstract不能被隐藏
14、获得对象的类名的方法:p.GetType().FullName == “student”或者:P.GetType()==typeof(Student)
15、C#的对象自动删除,当对象不再引用时,自动收回内存。
16、ListBox没有AutoSize的选项,必须明确的设置高度和宽度
dekegate声明委托插件
相关文章推荐
- C# 匿名方法 委托 Action委托 Delegate委托
- C# ListView用法详解
- 使用未公开关键字在 C# 中导入外部 printf 等参数数量可变函数 [2] C# 实现
- 使用未公开关键字在 C# 中导入外部 printf 等参数数量可变函数 [1] CLR 支持
- C#中的虚函数的作用
- c# 获取IP
- C# in depth ( 第五章 进入快速通道的委托)
- C#操作EXCEL时,判断一个单元格是否为空的方式
- Visual C#2010学习笔记五之变量和常量的使用
- C# 学习笔记
- C#中的枚举类型
- C#操作目录和文件讲解
- C#Winform常引用的库
- C#中StreamReader读取中文时出现乱码问题总结
- C# 大文本的读取处理
- C#定点任务代码 类似Windows计划任务(健壮性高)
- 学习c#中遇到的一些问题(2)
- C#实现将图片另存到新建的文件夹中
- C# 基础小知识之yield 关键字 语法糖
- C#程序中将图片转换为byte数组,并将byte数组转换为图片