C#基础学习笔记(上)

第一课:数组

一维数组
1-1
1.用三种方式定义和打印有3个元素的int一维数组 int[3]
2.用带参数的静态方法动态定义数组长度并打印数组元素 PrintArr(int arrLength),接受用户输入数组长度 比如:3
3.用带参数的类的方法动态定义数组长度并打印数组元素 PrintArr(int arrLength),接受用户输入数组长度 比如:3

1-2
ArrayList 类  System.Collections
1.接受用户输入字符串,并增加到ArrayList对象中,并打印出来

1-3
多维数组
1.定义和初始化2维和3维int数组
2.定义和打印4*6的int二维数组矩阵,矩阵中的值 (i+1)*10+j+1

1-4
数组的数组(不规则数组)
1.定义和初始化int[][]j2不规则数组(数组的数组)

第二课:命名空间 namespace
2-1
1.不同命名空间之间的引用
2.命名空间的嵌套
3.同一命名空间的不同文件的编译命令(编译.dll文件)
  csc /target:library name.cs 编译name.dll文件
  csc /reference:name.dll csharp.cs 把.dll文件与主文件关联
4.别名(Alias) using

第三课:方法

3-1.方法的语法
1.成员访问修饰符 返回值 方法名称(参数列表)
{
 //方法的内容
}
2.写一个不带返回值的方法,打印一行字符串 my name is a
3.写一个带时间类型的返回值的方法,打印当前时间 now is 2010-2-2
4.写一个带参数的方法,打印参数 i+k=8
5.同一个类的多个对象(实例)如何共享变量?答:把变量声明在Class级别,并声明为static静态变量。类的静态变量和方法使用类名直接访问
 
3-2.方法的参数传递 值参数 引用参数 输出参数
1.值参数 传递值,不改变参数原来的值 Method(int i),
2.引用参数,传递引用(指针)改变参数原来的值,要求参数在方法外部初始化 Method(ref int i)
3.输出参数,传递引用(指针)改变阐述原来的值,要求参数在犯法内部初始化 Method(out int i)
4.可变数量的参数Params关键字Method(params int[] values)
5.如果参数为引用类型,则参数默认为引用参数
6.思考数组参数是值参数,还是应用参数,为什么?引用参数,因为数组是引用类型变量
7.字符串参数是值参数,还是引用参数,为什么?值参数,因为字符串是不可变的。

第四课:字符(Char)

第五课:类(Class)

1.所有类都隐含继承自Object类
2.不要在构造器中做赋值以外的工作
3.掌握plublic A(int i):this()的用法
4.类的无参构造器和有参构造器的用法
5.类的继承与默认构造器.public B():base("c")的用法
6.静态构造器,对类的静态成员变量进行初始化 static A(){}

第六课:类的析构
using(MyResource mr = new MyResource()) 对于非托管资源
{
 //方法内容
}

第七课:类的修饰符

1.sealed 密封類,不能被继承
2.partial 可以声明在不同文件中的类

第八课:类型转换
1.显示转换
2.隐式转换
3.值类型转换
  checked()unchecked()
  checked{} unchecked{}
  检查溢出

4.引用类型转换(is 操作符, as 操作符)
  可以把任何一个类型转换为它的基类型
  使用Type.GetType()方法获得类的名称 Type t = f.GetName(); t.FullName;
  强制类型转换 (Apple)f
  应用:遍历窗体所有控件
        遍历窗体所有按钮控件

第九课:属性

1.属性是被称为访问器的特殊方法
2.属性的四个种类,可读写\只读\只写\Static属性(只能访问静态变量,例如计数器)

第十课:索引器
1.索引器比类数组效率高
2.索引器提供了把数组封装到类中的方法,可以更好的提高数据安全性。
3.索引器比数组更为灵活,可以使用字符传作为索引值(使用Hashtable)
4.索引器可以重载 
  语法实例

 1   class SampleCollection<T> //带索引器的泛型类
 2 {
 3     private T[] arr = new T[100];
 4     public T this[int i]
 5     {
 6         get
 7         {
 8             return arr[i];
 9         }
10         set
11         {
12             arr[i] = value;
13         }
14     }
15 }

 

 

posted on 2010-02-21 12:56  桓源  阅读(292)  评论(0)    收藏  举报

导航