预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共149页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

C#语言简介 C#是专门用于.NET的新编程语言,它是为生成在.NETFramework上运行的多种应用程序而设计的。C#简单、功能强大、类型安全,而且是面向对象的。C#是从C和C++还有Java演化而来的,因此,它继承了以上几种语言的优点,并对其确定进行了改进。同时它吸取了以前的教训,解决了其他语言中存在的问题。C#凭借它的许多创新,在保持C语言表示形式的同时,实现了应用程序的快速开发。 什么是数据类型 C#中的数据类型(CommonTypeSystem(CTS))包括两种:一种是值类型,一种是引用类型。值类型直接存储值,而引用类型存储的是对值的引用。 值类型的使用 值类型直接存储值,它与引用类型不同,从值类型不可能派生出新的类型。值类型不可能包含null值,但引用类型可以。 C#中的值类型如表1所示。 表1C#值类型表 名称CTS类型说明范围sbyteSystem.SByte8位有符号整数-128~127shortSystem.Int1616位有符号整数-32768~32767intSystem.Int3232位有符号整数-231~231-1longSystem.Int6464位有符号整数-263~263-1byteSystem.Byte8位无符号整数0~255ushortSystem.Unit1616位无符号整数0~65535unitSystem.Unit3232位无符号整数0~232-1ulongSystem.Ulong64位无符号整数0~264-1floatSystem.Single32位单精度浮点数±1.5×10-45~±3.4×1038doubleSystem.Double64位双精度浮点数±5.0×10−324~±1.7×10308decimalSystem.Decimal128位双精度浮点数±1.0×10e−28~±7.9×10e28值类型还包括布尔型、字符型和枚举型。 引用类型的使用 引用类型的变量又称为对象,可存储对实际数据的引用。class、interface和delegate都可以用于声明引用类型。 C#有两个内置的引用类型:object类型和string类型,下面对它们进行详细介绍。 1.object类型 object类型在.NETFramework中是Object的别名。在C#的统一类型系统中,所有类型(预定义类型、用户定义类型、引用类型和值类型)都是直接或间接从Object继承的。可以将任何类型的值赋给object类型的变量。 下面通过实例来说明object类型的引用。 程序开发步骤如下: (1)启动VisualStudio2005,新建一个控制台应用程序,命名为Ex02_01。 (2)在自动生成的Program.cs文件中编写如下代码: usingSystem; usingSystem.Collections.Generic; usingSystem.Text; namespaceEx02_01 { classObjectClass { publicinti=60; } classProgram { staticvoidMain(string[]args) { objecta; a=1;//为变量a赋值 Console.WriteLine(a); Console.WriteLine(a.GetType()); Console.WriteLine(a.ToString()); Console.WriteLine(); a=newObjectClass();//重新实例化变量a ObjectClassclassRef; classRef=(ObjectClass)a;//引用调用 Console.WriteLine(classRef.i); Console.Read(); } } } 实例运行结果如图1所示。 图1object类型a的引用调用 可以看到,classRef只是指向了a,因为classRef并没有实例化,但classRef.i却等于60。 2.string类型 string类型表示Unicode字符的字符串,它是.NETFramework中的String的别名。字符串是不可变的,字符串对象一旦创建,其内容就不能更改。 尽管string是引用类型,但一般定义运算符==和!=都是为了比较string对象(而不是引用)的值,这使得对字符串相等性的测试更为直观。例如: stringa="hello"; stringc="h"; c=c+"ello"; Console.WriteLine(a==c); Console.WriteLine((object)a==(object)c); 运行上面代码时,将首先显示“True”,然后显示“False”,因为字符串的内容是相同的,但是a和c引用的