1 、C#中数据类型的分类: (1)值类型:它存储在内存的堆栈中,表示实际数据。包括:基本数据类型(字符串除外)、结构、枚举。 (2)引用类型:它存储在内存的堆中,表示对象地址。包括:字符串、数组、类、接口、委托。 2、 C#声明常量的声明方式: (1)静态常量(const):< 访问修饰符> 数据类型 常量名称=常量值 (2)动态常量(readonly): C#基础知识之静态常量(const) 定义:声明的同时要设置常量值。 类型限制:首先类型必须属于值类型范围,且其值不能通过new来进行设置。 对于类对象而言:对于所有类的对象而言,常量的值是一样的。 内存消耗:无。 综述:性能要略高,无内存开销,但是限制颇多,不灵活。 C#基础知识之动态常量(readonly) 定义:声明的时候可以不需要进行设置常量值,可以在类的构造函数中进行设置。 类型限制:没有限制,可以用它定义任何类型的常量。 对于类对象而言:对于类的不同对象而言,常量的值可以是不一样的。 内存消耗:要分配内存,保存常量实体。 综述:灵活,方便,但是性能略低,且有内存开销。 3 、 装箱和拆箱: (1)装箱:将值类型转换成引用类型。(is as) (2)拆箱:将引用类型转换成值类型。 4 、Typeof运算符: C#没有自己的内库,但是它共享了.Net的内库。C#中的基本数据类型只是.Net基本数据类型的别名而已。获得系统原型对象的类型。 5、访问域,访问修饰符 (1)访问域:public、 private 、internal、 protected、protectedinternal (2)访问修饰符:partial、、sealed、virtual、override 、abstract 、new、 extern、 static
6 、构造函数和析构函数: (1)构造函数:与类同名,无返回值。可以重载。 (2)析构函数:与类同名,无返回值。不能重载。一个类只有一个析构函数。由垃圾回收器自动调用。 7、构造函数调用: (1)调用基本构造函数::base() 或:base(string name,int age) (2)调用基类普通方法: base.基类方法名() 8 、方法调用: (1)实例对象调用:类名.方法名([参数列表]) (2)静态类调用:类名.方法名([参数列表]) 9 、方法重载与方法重写: (1)方法重载:在同一个类中的方法,返回类型相同,方法名相同,方法签名不同。 (2)方法重写:在基类与子类中,基类方法是:virtual、abstract 时,方可在子类中用override重写基类方法。 10、OOP编程三大特点: (1)封装: (2)继承: (3)多态:多态的两种表现形式:方法重载和方法重写。 11、抽象类和接口的区别与联系: C#基础知识之抽象类:至少含有一个抽象方法的类,不能被实例化。包含属性、方法声明、功能定义和实现。 C#基础知识之接口:接口是一个特殊的抽象类。仅限于对方法、索引器、及属性的声明。 12 、委托: (1)它包含对方法而不是方法名的引用,使用委托可以在运行时动态设定要调用的方法。委托将名称与方法的定义连接起来。 (2)委托的作用:定义事件句柄(EventHander),目的:自定义事件。委托实际上是函数的指针,它能引用函数。 (3)使用委托的步骤: a 定义委托:[访问修饰符] delegate 返回类型委托名() b 实例化委托:使其指向某个方法。 c 使用委托: 13、事件: (1)事件(Event):是一种函数成员,是类和对象发出的消息。以通知发生了某个特定的行为或某个特定的条件已经成立。 定义事件: [访问修饰符] event 委托名 事件名 定义事件时,发行者首先定义委托,然后根据委托定义事件。 public delegate void delegateMe() //定义委托 public event delegateMe eventMe; //定义事件 (2)订阅事件:只是添加了一个委托,事件引发时该委托将调用一个方法。 订阅事件: eventMe+=new delegateMe(objA.Method) //objA.Method方法订阅了事件eventMe 14 、控件与组件: (1)控件:可视化界面组件称为控件。(可视化的类),所有Windows窗体都是从System.Windows.Forms.Control类派生出来的类。 (2)组件:不含可视化的界面。 以上总结了14条C#基础知识,希望能对您有所帮助。 |
声明:本文转载自http://www.7aspx.com/a/C_jiaocheng/2009/1208/2072.html