C#基础知识一览

开发 后端
本文总结了C#基础相关的各类知识。

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#基础知识,希望能对您有所帮助。

【编辑推荐】

  1. 浅谈C#中构造函数和成员函数
  2. C#函数的参数返回结构数组
  3. 概述ASP.NET中的NGWS Runtime
  4. C#函数与JavaScript函数
  5. 详解C# Object.Equals函数

责任编辑:book05 来源: cnblogs
相关推荐

2009-08-27 16:37:06

C#基础知识

2009-08-13 12:50:45

C#基础知识

2009-08-13 16:13:03

C#基础知识

2009-08-11 15:17:12

C#基础知识

2009-08-13 15:40:28

C#基础知识

2009-08-13 09:46:49

C#历史C# 4.0新特性

2009-08-24 17:07:09

C# 泛型

2009-08-21 17:19:36

C#网络编程入门

2009-08-19 17:13:15

C# 操作符基础知识

2009-08-19 16:19:01

C#操作Access数

2018-05-03 14:44:52

2009-08-10 18:31:42

什么是ASP.NET

2010-01-19 10:16:40

C++程序

2010-01-19 14:45:35

C++语言

2013-12-12 14:04:28

C编程语言

2011-01-11 09:53:28

linux进程

2021-06-08 09:47:44

Java面向对象

2010-11-15 09:55:35

Oracle转换函数

2019-04-26 14:21:34

手机色彩苹果

2011-01-11 10:06:14

linux进程
点赞
收藏

51CTO技术栈公众号