C sharp 程序设计基础

上传人:jiups****uk12 文档编号:54360838 上传时间:2018-09-11 格式:PPT 页数:68 大小:533KB
返回 下载 相关 举报
C sharp 程序设计基础_第1页
第1页 / 共68页
C sharp 程序设计基础_第2页
第2页 / 共68页
C sharp 程序设计基础_第3页
第3页 / 共68页
C sharp 程序设计基础_第4页
第4页 / 共68页
C sharp 程序设计基础_第5页
第5页 / 共68页
点击查看更多>>
资源描述

《C sharp 程序设计基础》由会员分享,可在线阅读,更多相关《C sharp 程序设计基础(68页珍藏版)》请在金锄头文库上搜索。

1、第2讲 C#程序设计基础,内容提要,本章主要分析C#的语法,C#作为.NET的原生语言,功能非常强大。 作为ASP.NET的编程基础,主要分析C#的变量、常量、控制语句、C#类的基本使用方法、C#的异常处理和C#语言面向对象的高级特性。,C#概述,C#是微软公司专门为.NET量身定做的编程语言,它与.NET有着密不可分的关系。 C#的类型就是.NET框架所提供的类型,C#本身并无类库,而是直接使用.NET框架所提供的类库。 另外,类型安全检查、结构化异常处理也都是交给CLR处理的。因此,C#是最适合开发.NET应用的编程语言。,C#的特点,C#不仅具有C+的强大功能,而且具有Visual Ba

2、sic简单易用的特性。C#的语法与C+基本相同。如果以前对C+非常熟悉的话,学习C#则是一件非常容易的事情。默认情况下,C#代码在.NET框架提供的受控环境下运行,不允许直接操作内存。它带来最大的变化是C#没有了C和C+中的指针。与此相关的,那些在C+中被大量使用的指针操作符已经不再出现。C#只支持一个“.”,C#程序结构,案例名称:第一个C#程序 程序名称:2-01.csusing System; class Hellopublic static void Main() Console.WriteLine(“您好! “); ,C#编译器,.NET Framework SDK内置了C#编译器“

3、csc.exe(C Sharp Compiler)”,该文件在“WINNTMicrosoft.NETFrameworkv版本号”目录下。 如果不能执行该命令,需要将该目录添加到操作系统的PATH变量中。可以在命令窗口编译C#文件,假如要编译名为1-01.cs的C#文件。命令行的语法为: csc 2-01.cs,不用using导入名字空间,案例名称:不用using导入名字空间 程序名称:2-02.csclass Hello public static void Main() System.Console.WriteLine(“您好! “); ,程序的输入和输出,案例名称:利用ReadLine()

4、读入数据 程序名称:2-03.csusing System; class Hello public static void Main() Console.Write(“请输入你的名字:”);string str_bookName=Console.ReadLine();Console.WriteLine(“您好!0 “,str_bookName); ,命令行参数,案例名称:使用命令行参数 程序名称:2-04.csusing System; public class Hellopublic static void Main(string args) Console.WriteLine(“你共有0个

5、朋友“,args.Length);Console.WriteLine(“你的朋友列表为:“);for(int i=0; iargs.Length; i+) Console.WriteLine(“Arg0=1“, i, argsi); ,C#注释,案例名称:使用注释 程序名称:2-05.csusing System; class Hellostatic void Main() /* 声明一个DateTime变量t并将当前日期赋给t */DateTime t=DateTime.Today;string str_Time; / 声明一个字符串变量str_Timestr_Time=t.ToLongDa

6、teString();Console.WriteLine(“当前日期是:0“,str_Time); ,C#的数据结构,C#的数据类型分为值类型(Value Type)和引用类型(Reference Type)两大类。值类型包括简单类型(Simple Type)、结构类型(Struct Type)和枚举类型(Enum Type)3种。引用类型包括类类型(Class Type)、数组类型(Array Type)和代理类型(Delegate Type)。 string是特殊的引用类型,变量和常量,C#是大小写敏感的,即大写和小写字母认为是不同的字母。例如变量名something,Something,

7、SOMETHING都是不同的名字。 命名变量名要遵守如下的规则: 不能是C#关键字。 第一个字符必须是字母或下划线。 不要太长,一般不超过31个字符为宜。 不能以数字开头 中间不能有空格 变量名中不能包含“.;,”+-”之类的特殊符号。实际上,变量名中除了能使用26个英文大小写字母和数字外,只能使用下划线“_”。 变量名不要与C+中的库函数名、类名和对象名相同。,使用常量,案例名称:使用常量 程序名称:2-06.csusing System; class Hellopublic const double PI=3.14159265; static void Main()Console.Writ

8、eLine(“圆周率PI的值为0”,PI); ,值类型,值类型,也称为简单类型,是直接由一系列元素构成的数据类型。 C#语言中提供了一组已经定义好了简单类型。 可以分为整数类型、布尔类型、字符类型和实数类型。,整数类型,整数类型的变量的值为整数。计算机的存储单元是有限的,所以计算机语言提供的整数类型的值总是在一定的范围之内。 C#中有九种整数类型,这些整数类型在数学上的表示以及在计算机中的取值范围如表2-1所示。,整数类型,使用整数类型,案例名称:使用整整类型 程序名称:2-07.csusing System; class Hellopublic static void Main() shor

9、t x=32766;x+;Console.WriteLine(x);x+;Console.WriteLine(x); ,布尔类型,布尔类型是用来表示“真”和“假”的。布尔类型表示的逻辑变量只有两种取值。在C#中,分别采用true和false两个值来表示。在C语言中,用0来表示“假”,其他任何非零的值表示真。在C#中,布尔型变量只能是true或者false。,实数类型,实数在C#中采用两种数据类型来表示:单精度(float)和双精度(double)。它们的区别在于取值范围和精度不同。单精度:取值范围在正负1.5*10-45到3.4*1038之间,精度为七位。 双精度:取值范围在正负5.0*10-

10、324到1.7*10308之间,精度为15-16位。,字符类型,字符包括数字字符、英文字母和表达符号等等,C#提供的字符类型按照国际标准,采用Unicode字符集。一个Unicode的标准字符长度为16位,用它可以来表示世界上大多数语言。给一个变量赋值的语法为: char mychar=M; 也可以直接通过十六进制或者Unicode赋值。 char mychar=x0034;/mychar=4 char mychar=u0039;/mychar=9,枚举类型,案例名称:使用枚举类型 程序名称:2-09.csusing System; enum WeekDay Sunday,Monday,Tue

11、sday,Wednesday,Thursday,Friday,Saturday ; class Test static void Main() WeekDay day; / 声明WeekDay的实例day;day=WeekDay.Sunday;Console.WriteLine(“day的值是0“,day); ,引用类型,C#中的另一大数据类型是引用类型。“引用”的含义是:该类型的变量不直接存储所包含的值,而是存储所要存储值的地址。C#中的引用类型有四种:类、数组、代表和接口。,类,类是面向对象编程的基本单位,是一种包含数据成员、函数成员的数据结构。类的数据成员有变量、域和事件。函数成员包括方

12、法、属性、构造函数和析构函数等等。类和结构同样都包含了自己的成员,但他们之间最主要在于:类是引用类型,而结构是值类型。类支持继承机制,通过继承,派生可以扩展类的数据成员和函数方法,进而达到代码重用和设计重用的目的。,数组,案例名称:使用数组类型 程序名称:2-10.csusing System; class teststatic void Main() int arr1=new int2;int arr2=new int1,2,3;string arr3=“six“,“ is “,“me“;int, arr4=1,2,3,4;int, arr5=new int3,4;for(int i=0;i

13、arr1.Length;i+) arr1i=i*i*i;Console.WriteLine(“arr10=1“,i,arr1i);for (int i=0;i4;i+) for(int j=0;j3;j+) arr5j,i=i*j;Console.WriteLine(“arr50,1=2“,j,i,arr5j,i);,Delegate,delegate是C#中的一种类型,它实际上是一个能够持有对某个方法的引用的类。以下3个步骤即可实现一个delegate: 声明一个delegate对象,它应当与你想要传递的方法具有相同的参数和返回值类型。 创建delegate对象,并将你想要传递的函数作为参数

14、传入。 在要实现异步调用的地方,通过上一步创建的对象来调用方法。,Delegate,程序名称:使用代表 程序名称:2-11.csusing System; delegate int mydelegate(); class myclass public int InstMethod() Console.WriteLine(“Call the InstMethod.“); return 0; class Test static public void Main() myclass p=new myclass(); mydelegate d=new mydelegate(p.InstMethod);

15、 d(); /指代p.InstMethod ,接口,接口描述了组件对外提供的服务。在组件和组件之间、组件和客户之间都通过接口进行交互。因此组件一旦发布,它只能通过预先定义的接口来处理合理的、一致的服务。,操作符与控制语句,表达式由操作数和操作符来构造。表达式的操作符指示出对操作数采取哪种操作。操作符的例子包括+、-、*、/和new。操作数的例子包括文字、域、局部变量和表达式。 有三种类型的操作符: 一元操作符。一元操作符有一个操作数并且或是使用前缀符号(例如-x)或是使用后缀符号(例如x+)。 二元操作符。二元操作符有两个操作数并且使用中间符号(例如x + y)。 三元操作符。只有一个三元操作

16、符?:。三元操作符有三个操作数并且使用中间符号 (c? x: y)。 三元操作符(?:)也称条件操作符。对条件表达式“b?x:y“,总是先计算条件b,然后进行判断。如果b的值为true,则计算x的值,否则计算y的值。条件运算符为右联运算符,因此该形式的表达式 a ? b : c ? d : e 按如下规则计算:a ? b : (c ? d : e),算术操作符,案例名称:使用算术操作符 程序名称:2-13.csusing System; enum Weekday Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday ; class test static void Main() string mystr1 = “你好!“;string mystr2 = “小刘“;string mystr3 = mystr1 + mystr2;Weekday d1 = Weekday.Sunday;Weekday d2 = d1 + 3;Console.WriteLine(“d1=0,d2=1“,d1,d2);Console.WriteLine(mystr3); ,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号