C#程序设计语言学习内容C#语言概述基本语法数组控制语句面向对象设计C#语言概述C#语言是微软公司设计的一种编程语言,是从C和C++派生来的一种简单、现代、面向对象和类型安全的编程语言。C#是一种对大小写敏感的语言,在C#程序中,同名的大写和小写代表不同的对象,因此在输入关键字、变量和函数时必须使用适当的字符。对于关键字基本上都采用小写。对于私有变量的定义一般都以小写字母开头、而公共变量的定义则以大写字母开头,C#语言概述在一个开发语言中,注释也是非常重要。C#提供了两种注释的类型:1.第一种是:单行注释,注释符号是“//”,例如:inta;//一个整型变量,存储整数2.第二种是:多行注释,注释符号是“/*”和“*/”,任何在符号“/*”和“*/”之间的内容都会被编译器忽略,例如:/*一个整型变量,存储整数*/inta;3.XML注释符号“///”也可以用来对C#程序进行注释,例如:///一个整型变量///存储整数inta;C#语言概述每一句C#程序都要以语句终止符来终结,C#的语句终止符是“;”。例如:inta;在C#程序中,可以在一行中写多个语句,但每个语句都要以“;”结束,也可以在多行中写一个语句,但要在最后一行中以“;”结束。例如:inta;strings;floatf;//一行中多个语句语句块在C#程序中,把用符号“{”和“}”包含起来的程序称为语句块。语句块在条件和循环语句中经常会用到,主要是把重复使用的程序语句放在一起以方便使用,这样有助于程序的结构化。基本语法语法是一种程序语言最基本的定义规范,只要按照语法给出的规则才能编写出正确的程序。C#程序基本语法包括:数据类型的种类,变量和常量的声明和使用以及语句的基本组成表达式和运算符。C#的数据类型包括值类型、引用类型和指针类型。指针类型是不安全类型,一般不推荐使用。基本语法值类型包括简单类型(如字符型、浮点型和整数类等)、枚举类型和结构类型。所有的值类型都隐含地声明了一个公共的无参数的构造函数,这个构造函数返回一个初始为零的值类型的实例。例如,对于字符型,默认值是“\x0000”;对于float,默认值是0.0F。(1)简单类型:它是C#预先定义的结构类型,简单类型用关键字定义,这些关键字仅仅是在System命名空间里预定义的结构类型的化名,比如关键字int对应System.Int32。简单类型以下的数据类型:sbyte:字节型,-128到127short:短整型,-32768到32767int:整型,-2147483648到2147483647long:长整型,-9.2e18到9.2e18float:浮点型,-3.4e38到3.4e38double:双精度浮点型,-1.8e308到1.8e308char:字符型bool:布尔型true或flase基本语法(2)集合类型:它是C#中一种轻量级的值类型,用来表达一组特定的值的集合行为,以enum关键字进行声明。(3)结构类型:它是用来封装小型的相关变量组,把它们封装成一个实体来同一使用,以struct关键字进行声明。基本语法引用类型包括类类型、对象类型、字符串类型、接口类型、委托类型和数组类型等。引用类型与值类型的不同之处是值类型的变量值直接包含数据,而引用类型的变量把它们的引用存储在对象中。引用类型:(1)字符串类型:直接从object中继承而来的密封类。String类型的值可以写成字符串文字的形式。例如:”123”、”helloworld”是字符串类型。基本语法(2)接口类型:一个接口声明一个只有抽象成员的引用类型,接口仅仅存在方法标志,但没有执行代码,以关键字interface进行声明。(3)委托类型:委托引用一种静态的方法或对象实例,引用该对象的实例方法,与c/c++中的指针类似,以关键字delegate进行声明。基本语法变量,就是在程序的运行过程中其值可以被改变的量,变量的类型可以是任何一种C#的数据类型。所有值类型的变量具有实际存在于内存中的值,也就是说当将一个值赋给变量是执行的是值拷贝操作。变量的定义格式为:1.变量数据类型变量名(标识符);含义是声明了一个变量,并没有对变量进行赋值,此时变量使用默认值。2.变量数据类型变量名(标识符)=变量值;含义是声明定义变量的同时对变量进行了初始化,变量值应该和变量数据类型一致基本语法常量,就是在程序的运行过程中其值不能被改变的量。常量的类型也可以是任何一种C#的数据类型。常量的定义格式为:const常量数据类型常量名(标识符)=常量值;“常量值”的类型要和常量数据类型一致,如果定义的是字符串型,“常量值”就应该是字符串类型,否则会发生错误。例如:1.constdoublePI=3.1415926;//定义了一个double类型的常量2.conststringVERSION=VisualStudio2008;//定义了一个字符串型的常量基本语法表达式是可以运算的代码片段,表达式可以包括运算符、方法调用等,表达式是程序语句的基本组成部分,例如:1.intnum=5;//定义一个整型变量num,并对其赋值2.stringstr=“你好,世界!”;//定义一个字符串变量,并对其赋值运算符是数据运算的术语和符号,它接受一个或多哥称为操作数的表达式作为输入并返回值。C#中的运算符非常的多,从操作数上划分运算符大致分为3类:1.一元运算符:处理一个操作数,只有几个一元运算符。2.二元运算符:处理两个操作数,大多数运算符都是二元运算符。3.三元运算符:处理三个操作数,只有一个三元运算符。基本语法从功能上划分,运算符主要分为:算术运算符,赋值运算符,关系运算符,条件运算符,位运算符和逻辑运算符。例如:1.i++;//一元运算,变量i自动加12.num=2+3;//二元运算,变量num等于2加3的和3.result=ab?100:-10//三元运算,条件运算符,根据条件的真假来决定运算的正确性表达式中的运算符按照运算符优先级的特定顺序计算基本语法数组是包含若干个相同类型数据的集合,数组的数据类型可以是任何类型。数组可以是一维的,也可以是多维的。数组的维数决定了相关数组元素的下标数,一维数组只有一个下标。一维数组通过声明方式如下:数组类型[]数组名;声明方式说明:数组类型”是数组的基本类型,一个数组只能有一个数据类型。数组的数据类型可以是任何类型,包括前面介绍的枚举和结构类型。基本语法数组声明以后,就可以对数组进行初始化了,数组必须在访问之前初始化。数组的初始化有两种方式:第一种是在声明数组的时候进行初始化;第二种是使用new关键字进行初始化。数组中的所有元素值都可以通过数组名和下标来访问,数组名后面的方括号中指定下标。数组的第一个元素的下标是0,第二个元素的下标是1,依此类推。例如:1.int[]vector={80,90,100,66};//定义并初始化了一个有四个元素的数组vector2.vector[2]=99;//使用vector[2]访问该数组的第3个元素基本语法多维数组有多个下标,例如二维数组和三维数组声明的语法分别为:1.数组类型[,]数组名;2.数组类型[,,]数组名;多维数组可以在声明的时候初始化,也可以使用new关键字进行初始化。初始化时数组的每一行值都使用{}括号包括起来,行与行间用逗号分隔。要访问多维数组中的每个元素,只需指定它们的下标,并用逗号分隔开.。例如;1.int[,]mypoint={{0,1},{2,3},{6,9}};//声明并初始化了一个3*2的二维数组2.int[][]mypoint=newint[3][2]{{0,1},{2,3},{6,9}};//使用new关键字进行初始化3.intnum=mypoint[0,1]//访问mypoint数组第一行中的第2列数组元素控制语句语句是程序的基本组成部分,正是一句句语句组成了程序。在C#中,除了单行语句外,还有一些复杂的语句,用来帮助完成比较复杂逻辑程序。条件语句条件语句通过判断条件是否为真来执行相应的语句块。在C#中,有两种形式的的条件语句结构:if语句和switch语句。1.if语句if语句的语法如下:if(条件){执行的语句;}else{执行的语句;}控制语句if语句根据条件的真假来执行相应的语句块,如果条件为真,则执行if语句块,若为假,则执行else语句块。if语句还有几个变化的结果形式,可以单独使用if语句,而不加else语句,如果有多个条件需要判断,也可以通过添加elseif语句。控制语句2.switch语句根据对应的条件来执行相应的语句块,主要用于需要判断的条件情况比较多情况。switch语句结构形式如下:switch{case条件1:执行的语句;break;…case条件n:执行的语句;break;default:执行的语句;break;}控制语句C#中的循环语句有四种:do-while循环,while循环,for循环和foreach循环。1.do-while循环do-while语句根据其布尔表达式的值有条件的执行它的嵌套语句一次或者多次,程序从会首先执行一次循环代码,然后判断布尔表达式的值,如果值为true就从do语句位置开始重新执行循环代码,一直到布尔表达式的值为false。其语法定义如下:do{循环代码}while(布尔表达式);控制语句2.while循环while循环非常类似于do-while循环,二者有一个重要的区别:while循环中的布尔测试是在循环开始时进行,而do-while循环是在最后检测。其语法定义如下:while(布尔表达式){循环代码}控制语句3.for循环for循环是最常用的一种循环语句,这类循环可以执行指定的次数.首先计算列初始表达式的值,接下来当条件成立时,执行其嵌套语句,之后计算重复表达式的值并根据其值决定下一步的操作。for循环的语法定义如下:for(循环变量初始化;循环条件;循环操作){循环代码}控制语句4.foreach循环foreach语句列举出一个集合(collection)中的所有元素,使用括号中的类型和标识符用来声明该语句的循环变量,并执行关于集合中每个元素的嵌套语句。foreach语句的语法定义如下:foreach(类型标识符in表达式){循环代码}控制语句跳转语句:进行无条件跳转,C#为此提供了如下五个语句:1.break语句:终止并跳出循环,用于跳出包含它的switch,while,do,for或者foreach语句。2.continue语句:终止当前的循环,重新开始一个新的循环。3.goto语句:跳转到指定的位置,建议不要使用goto语句,因为该语句可能会破坏程序的结构性。4.return语句:跳出循环及其包含的函数5.throw语句:抛出一个异常面向对象设计面向对象的程序设计(OOP:Object-OrientedProgramming)是一种基于结构分析的、以数据为中心的程序设计方法。其主要思想是将数据及处理这些数据的操作都封装(Encapsulation)到一个称为类(Class)的数据结构中,使用这个类时,只需要定义一个类的变量即可,这个变量叫做对象(Object)。面向对象设计在C#中,类是一种功能强大的数据类型,而且是面向对象的基础。类定义属性和行为,程序员可以声明类的实例,从而可以利用这些属性和行为。类具有如下特点:1.C#类只支持单继承,也就是类只能从一个基类继承实现。2.一个类可以实现多个接口。3.类定义可以在不同的源文件之间进行拆分。4.静态类是仅包含静态方法的密封类。面向对象设计类其实是创建对象的模板,类定义了每个对象可以包含的数据类型和方法,从而在对象中可以包含这些数据,并能够实现定义的功能。类的声明的结构形式如下:class类名{字段列表;方法列表;}面向对象设计在C#中,类可包含如下几种成员:1.字段,字段是被视为类的一部分的对象实例,通常用来保存类数据,一般为私有成员。