




已阅读5页,还剩60页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C#应用程序设计教程,本课程的前序课程:大学本专科计算机导论本课程主要讲述内容:Windows客户端应用程序设计,本书详细内容,第1章简单程序设计第2章数据类型第3章C#面向对象编程基础第4章程序调试与异常处理第5章C#可视化编程基础第6章常用控件和类的使用第7章文本编辑器的实现第8章图形图像编程第9章文件和流第10章多线程和Socket编程初步第11章数据库与ADO.NET,C#及VisualStudio开发工具介绍,C#2000年C#诞生2001年C#被ECMA(欧洲计算机制造者协会)规定为高级语言开发标准(ECMA-334)2003年C#被ISO(国际标准化组织)规定为高级语言开发标准(ISO/IEC23270)VS开发工具2003年发布VisualStudio.NET2003(VS.NET2003)2005年11月发布VisualStudio2005(VS2005)英文版2006年1月发布VS2005Professional简体中文版,VS2005的各种版本(功能从最强到最弱)VS2005Team版本用于大型团队开发VS2005Professional版本用于大中型软件公司VS2005Standard版本用于小型软件公司VS2005Express版本用于业余开发者(初学者)本课的上机实验环境VS2005Express版本安装建议(1)操作系统使用WindowsXPSP2(2)至少256MB内存,最好512MB,第1章简单程序设计,Microsoft.NetFrameWork(微软.Net架框,以下简称.NetFrameWork)是微软提出的新一代软件开发模型,是一种面向网络、支持各种用户终端的开发平台环境,是生成、部署和运行所有.NET应用程序的基础。它包括以下2个主要部分。,1.1.NET平台简介,1.1.1公共语言运行环境,公共语言运行环境(CommonLanguageRuntime,简称CLR)是.NET框架的基础。.NET源程序首先被编译为微软中间语言(MicrosoftIntermediateLanguage,简称MSIL)代码,形成扩展名为.exe或.dll文件,MSIL定义了一系列与CPU类型无关的可移植指令集,可在CLR中运行。扩展名为exe或dll的可执行文件运行时,CLR同时运行。MSIL语言代码不是CPU可执行的机器码,CLR中的JIT编译器(JustInTime)负责将MSIL代码翻译成机器代码在CPU中运行,由CLR来管理.NET应用程序的运行,CLR提供内存管理、线程管理、远程管理等服务,并对程序代码的安全和可靠性把关。可编写在任意指定操作系统中运行的CLR,凡是使用符合公共语言规范(CommonLanguageSpecification,CLS)的语言开发的程序均可在其上运行。因此,.NET源程序具有平台无关性。,1.1.2框架类库,为了提高开发效率,各种开发平台都为用户提供工具类库,如C+的MFC、JAVA的WFC、VB的VBRUN等。.NET框架提供了一个统一的、面向对象的、层次化的可扩展编程接口:框架类库(FrameworkClassLibraries,FLC),使得开发人员可以在.NET环境下使用各种不同的语言来进行应用开发。按照应用领域的不同,.NET将类库划分为四个部分:,基本类库:提供输入/输出、字符串操作、安全性管理、网络通信、文本管理等标准功能。ADO.NET:数据库访问及XML类。ASP.NET:Web服务和Web窗体,用来建立强大的Web应用程序。Windows窗体类:Windows窗体支持的一组类,用于开发基于Windows的图形用户界面应用程序。总之,.NET开发框架在公共语言运行时的基础上,为开发者提供了完善的类库,开发者可使用多种语言及VisualStudio开发工具来快速构建下一代的网络应用。,1.2C#语言特点,Microsoft.NetFrameWork是微软提出的新一代软件开发模型C#语言是.NetFrameWork中新一代的开发工具C#语言编写的源程序,被C#语言编译器编译为中间语言代码(MSIL),由通用语言运行环境(CLR)中的既时编译器(JIT)将中间语言代码翻译为CPU可执行的机器码,由CPU执行,CLR为C#语言中间语言代码运行提供了一种运行时环境,C#语言的CLR和JAVA语言的虚拟机类似。这种执行方法使运行速度变慢,但带来其他一些好处,主要有:通用语言规范自动内存管理交叉语言处理更加安全版本支持完全面向对象,1.3编写控制台应用程序,【例1.1】程序的代码如下:/在屏幕输出一行欢迎信息,从第一个/开始到本行结束是解释usingSystem;/引用命名空间SystemnamespaceMyApplication/声明命名空间MyApplicationclassTest/class是关键字,表示定义一个类,Test是类名/主函数(方法)Main,必须是静态的staticvoidMain(stringargs)/语句,调用方法WriteLine输出字符Console.WriteLine(欢迎使用C#!);/大括号必须成对出现,用微软VisualC#2005ExpressEdition(以后简称VS2005)生成控制台程序,具体步骤如下:(1)运行VS2005程序,单击菜单“文件(F)|新建项目(P)”菜单项,打开“新建项目”对话框如下图。在模板(T)列表框中选择控制台应用程序,单击确定按钮,创建项目。,(2)出现如下图界面,按图中那样修改Program.cs文件。编写一个应用程序可能包含多个文件,才能生成可执行文件,所有这些文件的集合叫做一个项目,项目名称可以是任何标识符,本项目名称为ConsoleApplication1。,(3)按CTRL+F5键,运行程序,运行结果如图1.3。需要注意的是,和以往使用过的绝大多数编译器不同,C#编译器只执行编译过程,不经过链接直接生成扩展名为.exe的可执行文件或扩展名为.dll的动态链接库,C#编译器中不包含链接器。,(4)单击菜单文件(F)|全部保存(L)菜单项,打开保存项目对话框,在名称(N)编辑框中键入保存的项目文件名称:控制台程序,在解决方案名称(M)编辑框中键入保存的解决方案名称:例1_1。单击位置(L)编辑框后的浏览(B)按钮,选择保存的文件的路径,在该路径下将创建文件夹例1_1,项目的所有文件都保存到这个文件夹下。这里请注意,必须保存项目的所有文件,将来才能重新打开项目。如仅保存Program.cs,将不能重新打开项目。,1.4程序结构,C#程序结构是指构成应用程序的必要元素,包括程序组成要素、语法规则及书写格式等。1.4.1C#程序的组成要素例1.1是一个简单的控制台应用程序,其功能是在屏幕上输出一行字:欢迎使用C#!。分析这个程序,可以看出C#程序有命名空间、类和方法、语句和大括号等组成要素。,1.标识符标识符是程序中为一些要素所定义的名称,如例1.1中的命名空间名MyApplication、类名Test、方法名Main等。程序中所有定义的标识符都有实际意义是很好的编程习惯。标识符命名时必须遵循如下命名规则:由字母、数字、下划线_组成,C#语言中标志符允许包含中文字符。第一个字符必须是字母、中文字符或下划线,不能是数字或除下划线外的特殊字符。C#对字母大、小写敏感,两个标识符即使只是对应字母大、小写不同,也是不同的标识符,这点和VB语言不同。标识符不能与关键字同名。,如例1.1程序中的MyApplication、Test、Main等都是合法的标识符。而下面的标识符都是非法标识符。2example/非法起始字符,起始字符不能是数字#200/非法起始字符,起始字符不能是特殊字符Hello*/含有非法字符“*”,标识符中不能有“*”if/if是关键字,关键字不能作为标识符HelloWorld/含有非法字符空格标识符中不能有空格,2.关键字在C#代码中的关键字是由C#语言定义并使用的具有特定意义的字符串,它们不能在程序中用作标识符。在VS2005环境的代码视图中关键字默认以蓝色显示。如例1.1代码中的using、namespace、class、static、void等,均为C#的关键字。3.类和方法C#语言用类来组织程序的变量和方法,所有变量和方法必须定义在一个类中。例1.1程序ClassTest语句定义了一个名为Test的类,其中关键字Class表示定义一个类,Test是类名。在类Test中声明了一个名为Main的方法,用来指示应用程序从该处开始执行。C#要求每个程序必须且只能有一个Main方法,该方法必须是静态的(用static修饰),所谓静态方法表示程序运行后,该方法就已存在,可以使用,Main方法必须放在某一个类中。类中还可以定义其他方法。有关类和方法的详细内容将在后面章节详细介绍。,4.命名空间命名空间是C#语言提供的对类库程序和程序员编写的程序分层组织方式,不同程序代码可以分类放到不同的命名空间中,为使用和维护这些程序提供了方便,使用命名空间的另一个原因是减少程序中标志符同名的可能性,不同命名空间中的标志符可以同名,同一命名空间中的标志符不能同名。命名空间有两种,一种是系统预定义的命名空间,它提供系统预定义的基本数据类型和程序代码,供设计程序时使用,由using关键字导入。如例1.1程序中“usingSystem;”语句,就导入了System命名空间,它提供了构建应用程序时所需要的所有系统功能,代码中的“Console.WriteLine”就是该命名空间提供的Console类(控制台类)中定义的在屏幕输出一行字符的方法WriteLine。在创建项目时,VS2005会自动生成导入该命名空间的代码,并且放在程序的第一行。,另一种是用namespace关键字声明的用户自定义命名空间,例1.1中的“MyApplication”就是用户自定义命名空间。全局命名空间应是源文件using语句后的第一条语句。在一个命名空间声明中还可以声明该命名空间的子命名空间。在同一命名空间中,不允许出现同名命名空间成员或同名的类。例子如下:usingSystem;namespaceN1namespaceN2/命名空间N1的子命名空间成员N2classA/在N2命名空间定义的类不应重名staticvoidf1();classBstaticvoidf2();,也可以采用非嵌套的语法来实现以上命名空间:namespaceN1.N2/类A、B在命名空间N1.N2中classAstaticvoidf1();classBstaticvoidf2();不同文件中的程序,如果使用相同命名空间名称声明,表示这些程序在同一个命名空间中。如在一个程序中,需引用其他命名空间的类或函数,可以使用语句using,例如需使用上边定义的方法f1()和f2(),可以采用如下代码:,usingN1.N2;classWelcomeAppA.f1();usingN1.N2是告诉应用程序到哪里找到类A。如果不使用using语句,应使用如下形式:classWelcomeApp/表示类A在命名空间N1.N2中N1.N2.A.f1();命名空间声明不是必须的,例如在上述程序中,可以不声明“MyApplication”这一用户自定义命名空间,程序照样可以正常运行,系统将所定义的程序放到默认的命名空间中。但在实际的程序开发过程中,一个程序往往由许多模块组成,使用命名空间有利于程序的组织和管理。,5.语句语句就是C#程序中执行操作的指令。在C#语言语句必须用分号;结束,这也是与VB不同的地方。可以一行上书写多条语句,也可以将一条语句书写在多行上。当语句中包含不同层次的内容时,C#用点“.”操作符表示从属关系。比如例1.1代码第6行通常应该写成如下形式:System.Console.WriteLine(欢迎使用C#!);其中,“System”表示一个命名空间,“Console”表示该命名空间中的一个类,“WriteLine”表示该类中的一个方法。不过,因为在第2行中使用了using指令,已经导入了“System”命名空间,所以使用该空间中的类时,不必显示给出命名空间的名称。,6.大括号在C#中,大括号和是一种范围标志,是组织代码的一种方式,用于标识应用程序中逻辑上有紧密联系的一段代码的开始与结束,和必须成对出现。大括号可以嵌套,以表示应用程序中的不同层次,例如,在例1.1程序中命名空间MyApplication下的大括号标识该命名空间的代码范围,类Test下的大括号标识该类的代码范围,方法Main下的大括号,标识该方法的范围。并且类Test包含在命名空间MyApplication中,方法Main又包含在类Test中。,1.4.2C#程序的格式,C#程序中的代码应按照一定的格式书写,代码格式有两类:一类属于C#的语法规则,这类格式必须遵守;还有一类属于结构格式,这在程序设计中不是必须的,但统一结构格式的书写方法有助于使代码层次清晰,从而提高程序的可读性,提高编程效率。1.缩进与空格缩进用于表示代码的结构层次,这在程序设计时不是必须的,但是缩进可以清晰地表示程序的结构层次。例如在例1.1程序中,命名空间及标识其范围的一对大括号顶格书写,命名空间中的类及标识其范围的一对大括号向内缩进一个制表位,类中的方法及标识其范围的一对大括号向内缩进两个制表位,方法中的语句向内缩进三个制表位。,2.注释例1.1程序的第1行是注释,它指出了该程序的文件名及该程序的主要功能。在程序代码中加上必要的注释可以提高程序的可读性,便于维护。一般情况下,每定义一个类、方法和结构等,都要在头部用注释说明其用途、使用方法、参数意义等。C#中注释有两种:单行注释:以“/”开始,本行其后的所有字符都是注释信息,注释到行尾结束。多行注释:以“/*”开头、“*/”结束,可以换行,其间的字符均被视作注释字符。例如,一个文件的头部都应使用注释增加如下信息:/*版权信息*文件名称*程序功能简介*作者,完成日期*/,1.5基本数据类型和表达式,本节先介绍C#语言内置数值类型、字符类型和布尔类型数据,然后介绍表达式和运算符。,1.5.1基本数据类型,本节介绍C#语言内置的基本数据类型。根据数据的性质可分为四类,即数值型、字符型、布尔型和对象型。本节不介绍内置对象类型,有关内容在后续章节介绍。1.数值类型数值类型有整数与实数类型两种,每种类型所占内存位数、其取值范围见下表所示。,整数整数可以用十进制表示,如123、45678等;也可以用十六进制表示,如0 x12、0X3A等,即在数字前面加“0 x”或“0X”。C#的整数没有八进制表示形式。一般说来,整型常量值的默认数据类型是int型,但当其值超出了int型的取值范围时,它将根据其数值大小相应被视为一个unit型、long型或ulong型。也可在整型常量后加后缀将它显示说明为指定类型,例如后缀U(或u)指定整数为uint或ulong型(视其值大小而定)。如果在整型常量后同时加上这两种后缀UL,它就是一个ulong型常量。123456L/long类型25u/uint类型25ul/ulong类型,浮点数浮点型常量只能用十进制表示,共有两种表示形式:一般形式和指数表示形式。一般形式又称小数表示形式,浮点数由整数和小数两部分组成,其中整数部分为0时在实际使用时可省略。例如:2.6,.9,8.0,小数部分不能省略,此与C+语言不同。如8.0不能写成8.。指数表示形式时,浮点数由尾数、字母E(或e)、指数部分组成。例如:2.3E12,.25E6,-0.35E-5。浮点型常量默认类型为double型,如果要将其说明为float型,需在其值后加后缀F(或f)。如果要将其说明为decimal型,需在其值后加M(或m)。也可在数值后加上后缀D(或d)将其显示说明为double型。例如:2.8f,6.9D,4.6E7M。,2.字符类型(char)字符型数据在内存中占2字节,包括数字字符、英文字母、表达符号、中文等,数据范围是065535之间的Unicode字符集中的单个字符。采用Unicode字符集可以表示世界上大多数语言。字符型数据通常情况下就是用单引号括起来的一个字符。例如:A,1,*,#此外,C#语言还提供了一些转义字符,以反斜杠“”开头,后跟一个字符或Unicode码。书中表1-2列出了C#语言中常用的转义字符。3.布尔型布尔型数据表示布尔逻辑量,只有两个值“true”(真)和“false”(假)。布尔型数据为程序进行复杂的判断提供了数据类型依据。和C语言不同,不能认为0是false,其他值是true。,1.5.2常量和变量,1.变量变量是指在程序运行过程中值可以发生变化的量。C#中要求变量在使用前必须先声明后使用。变量名必须为合法标识符,有关变量的命名规则参见1.4.1小节中的标识符命名规则。变量定义的一般形式为:类型变量名表;其中变量名表可以是单个变量,也可以是多个变量的列表。下面是一些合法的变量定义形式。charch;/声明了一个字符型变量chintnum,sum;/声明了两个整型变量,num和sumdoubletotal,salary;/声明了两个双精度变量total和salary此外,也可以在定义变量时对其进行初始化,例如:charch=a;/定义了一个字符型变量ch,并为其赋初值“a”intx=50,y;/定义了两个整型变量x和y,并为x赋初值为50/常量1.25后加了f是将值1.25强制转换为float型(默认情况下/1.25为double型)floatff=1.25f;/定义了一个单精度变量ff,并为其赋初值为1.25,2.常量:常量是在程序运行中值保持不变的量。常量有直接常量和符号常量两种。直接常量:在1.5.1节中介绍的各种类型的常数,其取值直接反映了其类型,故称作直接常量。符号常量:符号常量使用const或readonly关键字来定义,格式如下:const类型符号常量名=常量表达式;“常量表达式”的意义在于该表达式不能包含变量及函数等值会发生变化的内容。常量表达式中可以包含其他已定义常量。例如:constintmin=-32767;/合法constdoublePI=3.14;/合法constdoubleTT=PI*min;/合法,表达式包含两个已定义常量intRR=10;constdoubleSS=PI*RR*RR;/不合法,表达式中包含变量,1.5.3运算符和表达式,运算符是表示实现某种运算的符号。表达式是由变量、常量、运算符和圆括号等按一定的规则组成的式子。表达式经过运算后产生一个结果,其类型由数据和运算符共同决定。1.算术运算符和算术表达式下表按列出了C#中的算术运算符,其中“-”运算符在单目运算(单个操作数)中作取负号运算,在双目运算(两个操作数)中作减法运算。以下介绍的操作符的操作数可为整数类型和实数类型,结果仍为数值型数据。(表1-3中,设变量a、b、c为整型,值为5),2.关系运算符和关系表达式关系运算符用于对两个操作数进行比较,判断关系是否成立,结果为逻辑值。若成立则结果为true,否则为false。关系运算符有六种:、=、关系运算符逻辑运算符条件运算符赋值运算符。同类运算符中优先级也有高低之分。算术运算符中,乘、除、求余高于加、减;关系运算符中,小于、小于等于、大于、大于等于高于相等和不相等;逻辑运算符的优先级为非与或。当一个操作数出现在两个有相同优先级的运算符之间时,运算符按照出现的顺序从左向右执行(赋值运算符均为从右向左执行)。,1.6控制结构,学习了基本数据类型、运算符和表达式,就可以采用控制结构来编写程序。本节介绍C#语言中的控制结构,包括顺序结构、选择结构、循环结构和跳转语句。,1.6.1顺序结构,顺序结构是程序设计中最简单、最常用的基本结构。在该结构中,各语句是按照其书写次序一条接一条地顺序执行。1.赋值语句C#中的赋值语句是由赋值表达式加语句结束符号“;”构成。由于C#的赋值表达式形式丰富,所以赋值语句也表现出多样性。,单赋值语句由一个赋值操作符构成的赋值语句,其格式为:变量=表达式;其中“变量”是被赋值的对象,可以是基本变量或者是后边章节介绍的其他类型变量。“=”称为“赋值符号”,功能是把“表达式”的值赋给左边的“变量”。赋值号两端的数据类型原则上应该一致,当两者类型不一致,在将表达式转换为变量的类型时,如果任何情况下都不会导致信息丢失,例如表达式为int类型,变量为long类型,系统将自动进行数据类型的转换(隐式转换),如果将表达式转换为变量的类型时,信息可能丢失,例如表达式为long类型,变量为int类型,必须进行显示转换,请参考后边有关章节。一些例子如下:Doublepi=3.1415926;/声明一个双精度型的变量pi,并初始化。inti=0;i+;/变量i完成自增1的操作,等效于i=i+1;stringmyName=”李小飞”;/将字符串常量赋值给字条串变量inttotal;total=100;/将常量100赋值给数值变量total/编译错误,3.5默认为Double类型singlex=3.5;/不能将double类型隐式转换为single类型,复合赋值语句:复合赋值语句是使用+=、-=、*=、/=等运算符构成的赋值语句,例如:intx=5;x-=6;/相当于x=x-6,x的最后值为-1strings=”abcd”;s+=”efjh”;/相当于s=s+”efjh”,s的最后值为”abcdefgh”连续赋值语句:连续赋值语句是在一条语句中使用多个赋值运算符进行赋值的语句,这种语句可以一次为多个变量赋相同的值。例如:intx,y,z;x=y=z=6;/该语句使x、y、z同时被赋予整数6。,1.6.2选择结构,选择语句控制程序执行流程的方式是:根据给定的条件,决定执行哪些语句,不执行哪些语句。C#中提供了两种选择语句,if语句和switch语句。1.if语句:if语句的一般形式为:if(布尔表达式)语句1else语句2其含义是如果布尔表达式的值为true,执行语句1,否则执行语句2。语句可以是一条语句,也可是多条的复合语句。如果是复合语句时,其格式为:多条语句。else分支可以省略,如果没有,其形式如下:if(布尔表达式)语句1,其含义是如果布尔表达式的值为true,执行语句1;否则不执行语句1而直接执行其后的语句。2.switch语句if语句嵌套使用时,如果嵌套太深,程序将变得复杂、难以理解,使用switch语句可以方便地解决这种问题。switch语句又称开关语句,它的一般形式如下:switch(控制表达式)case常量表达式1:语句1;break;case常量表达式2:语句2;break;/可以有多条case语句case常量表达式n:语句n;break;default:语句n+1;break;,1.6.3循环结构,程序中往往需要重复执行某些语句。循环语句就具有这样的功能,它能使程序在给定条件满足时,重复执行一些语句。循环中反复被执行的语句称为循环体。C#语言4种循环语句:while语句、do-while语句、for语句和foreach语句。其中,foreach语句主要用于操作集合(数组),将在后面的章节中介绍。1.while语句while语句的一般形式为:while(布尔表达式)循环体其中,循环体可以是单一语句或语句块。while语句的执行过程为:(1)计算的值,假定为M;(2)若M为true,则执行一遍循环体,执行完循环体所有语句后,自动转向第(1)步执行。否则结束整个语句的执行,转去执行while语句后面的语句。while语句的执行过程可用图1.4表示出来。,2.do-while语句:do-while语句的一般格式如下:do循环体while(布尔表达式);注意:do-while语句最后的分号不能省略。do-while语句的执行过程可用图1.5来表示。,3.for语句for语句又称for循环,灵活的使用for语句完全可以解决编程中的一切循环问题,一切可用while语句和do-while语句实现的功能都可用for语句实现。其执行过程如下图。for语句的一般形式如下:for(初始化变量;布尔表达式;调整变量值)循环体for语句的执行顺序是:首先初始化变量,然后计算布尔表达式的值,如果布尔表达式的值为true,则执行循环体,否则退出循环。每次执行完循环体后,调整变量值,然后再计算布尔表达式的值,并根据其值决定是否继续执行循环体。,4.循环嵌套:当一个循环(称为“外循环”)的循环体内包含另一个循环(称为内循环),称为循环的嵌套,这种语句结构称为多重循环结构。内循环中还可以包含循环,形成多层循环(嵌套的层数从理论上讲不受限制)。三种循环可以互相嵌套。,1.6.4跳转语句,C#语言中共有5种跳转语句:break语句、continue语句、goto语句、return语句和throw语句。它们能实现程序执行流程的跳转。下面主要介绍前三种,有关return语句和throw语句的使用将在相关章节中详细介绍。1.break语句该语句称为中断语句,被限定使用在任一种循环语句和switch语句中,当程序执行到该语句时,将立即结束所在循环语句或switch语句的执行,接着执行其后面的语句。break语句的格式如下:break;当break语句出现在内层的循环语句或switch语句中时,它只是结束该层内的循环语句或switch语句的执行,不会结束其他外层循环或switch语句的执行。,2.continue语句该语句称为继续语句,被限定使用在任一种循环语句的循环体中,当程序运行执行到该语句时,中断本次循环,直接回到当前循环的起始处,开始下一轮循环。continue语句的格式如下:continue;,1.7方法初步,方法是用于解决某一特定问题的语句块,C#语言中的方法相当于VB中的通用过程(Sub)或函数过程(Function)。C#中的方法用于实现类和结构的行为,只能放在类定义中声明。本节主要介绍有关方法的基本知识。,1.7.1方法的定义,方法定义的一般格式如下:方法修饰符返回值类型方法名(参数列表)方法体方法修饰符包括public、protected、private、static、virtual等,static表示所定义方法是静态的,程序运行后,该方法就已存在可以使用,其他修饰符将在后面的单节详细介绍。返回类型是指调用方法后返回的值的类型,可以是任意合法的C#数据类型。方法的返回值是需要返回给调用者的结果,由return语句给出。如果方法不返回一个值,则它的返回类型为void,方法中可以没有return语句。,方法名应是一个合法的C#标识符。参数列表指定调用该方法时需要使用的参数个数、各参数类型,又称为形式参数,参数之间以逗号分隔。形式如下:类型1形式参数名1,类型2形式参数名2,类型n形式参数名n参数可以是任何类型的变量。如果方法在调用时不需要参数,则不用指定参数,但圆括号不能省略。花括号内的方法体是一个语句序列,由0条或多条语句组成,当是0条语句时,该方法被称作空方法。,1.7.2方法的调用,C
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年中国缬草提取物行业发展监测及投资战略规划研究报告
- 拼多多平台下的设计新趋势
- 鼓励食品捐赠与循环利用的途径
- 教学方法与学生学习满意度研究
- 微信社群营销策略及案例分析
- 中国聚芳酯(PAR)市场竞争格局分析及投资方向研究报告
- 探索文化创意产品的数字化营销模式
- 技术密集型企业准入难点解析
- 拼多多平台广告投放策略
- 中国广告文件夹行业市场发展前景及发展趋势与投资战略研究报告(2024-2030)
- 2025年华侨港澳台学生联招考试英语试卷试题(含答案详解)
- 项目部内审检查表
- 春雨计划患教指南-高血压治疗与合理用药
- 学校校本课程开辟汇报材料
- GB/T 42103-2022游乐园安全风险识别与评估
- 棒球运动主题教育PPT模板
- GB 14648-1993民用航空器飞行事故等级
- GA 1800.5-2021电力系统治安反恐防范要求第5部分:太阳能发电企业
- 脓毒症指南解读2021完整版课件
- 起重机械制动器和制动轮的检查规定
- 医院感染质量检查反馈记录登记
评论
0/150
提交评论