您好,欢迎访问三七文档
当前位置:首页 > 高等教育 > 习题/试题 > 第3章-C#程序设计
《软件技术》专业剖析报告软件教研室李萍2006年5月可视化程序设计_C#第3章C#程序设计语言讲课教师:周志德1、了解C#程序组成中解决方案、项目、类、窗体、函数等基本概念和对应文件;2、了解C#的数据类型,变量和常量定义,公用函数、语句表达式与程序书写规则;3、掌握赋值、分支、循环等语句的格式与使用方法;4、掌握数组、数组列表、类、接口、委托、命名空间等概念与使用方法。5、学会用类与对象设计学生成绩管理程序(解决方案)。教学要求1、采用类比教学法,即以C++中的程序组成、语法、语义与算法为例,引出C#中有关:(1)程序结构;(2)数据类型、表达式;(3)流程控制语句;(4)数组类型;(5)类、对象、接口与委托;(6)命名空间;的概念与使用方法。2、采用理实一体化的教学方法。教学方法1、类与对象(1)类(Class):数据成员(属性)+成员函数(方法)Class类{数据成员;成员函数;}(2)对象(Object):类对象;(3)对象成员调用:对象.属性;对象.方法();相关术语2、命名空间命名空间由若干个类的定义组成,如命名空间System由Math、String、DateTine、Double等类的定义组成。定义格式:namespace命名空间名{类1定义;…类n定义;}相关术语C++工程文件(.dsw)源文件1(.cpp)源文件2(.cpp)源文件n(.cpp)……编译预处理命令函数1函数n……函数2函数说明部分函数体数据定义执行语句图3.1C++程序组成C++程序组成问题:C#程序如何组成?答:解决方案(.sln)3.1C#程序组成3.1C#程序组成图3.2C#程序(解决方案)的组成普通类1(*.cs)(class)……普通类m(*.cs)(class)窗体类1(*.cs)(Form)……窗体类k(.cs)(Form)引用命名空间(using)定义项目命名空间(namespace)定义类(class)定义成员函数(方法)定义数据成员(属性)解决方案(.sln)(solution)C#项目1(*.csproj)(classproject)……C#项目i(*.csproj)(classproject)……C#项目n(*.csproj)(classproject)定义窗体类(Form.cs)窗体设计类(.Designer.cs)窗体资源(.resx)函数声明变量声明函数体引用命名空间定义项目命名空间定义窗体类定义全局变量定义函数程序定义事件驱动程序图3.3C#程序(解决方案)的组成引用命名空间定义窗体类定义事件驱动程序解决方案ex3_1.sln项目ex3_1.csproj引用命名空间定义窗体类(.cs)项目主程序.cs定义普通类.cs窗体设计类窗体资源类定义项目命名空间ex3_13.1C#程序组成3.1.1C#程序组成1、解决方案(.sln)VisualStudio2005将C#应用程序称为解决方案。如:学生档案查询解决方案ex2_5.sln;由图3.2可知C#解决方案由一个或多个C#项目组成。在解决方案中添加新项目的方法:菜单|文件|添加|新建项目|在对话框中选择:VisualC#、Windows应用程序、位置,输入项目名称。3.1C#程序组成【例3-1(1)】创建解决方案ex3_1.sln,在ex3_1.sln中添加项目ex3_1_2。(1)创建解决方案ex3_1.sln菜单|文件|新建|项目|新建项目对话框,设置如下:项目类型:VisualC#,模板:Windows应用程序位置:c:\C#,名称:ex3_1|确定。(2)在窗体Form1中添加一个label与一个Butoon,双击按钮,编写事件驱动程序:privatevoidbutton1_Click(objectsender,EventArgse){label1.Text=学习C#程序组成!;}3.1C#程序组成(3)在ex3_1.sln中添加项目ex3_1_2菜单|文件|添加|新建项目|添加新项目对话框,设置如下:项目类型:VisualC#,模板:Windows应用程序,位置:c:\C#名称:ex3_2|确定。此时,解决方案ex3_1.sln中出现项目ex3_1与ex3_1_2,如图3.4所示,即解决方案ex3_1.sln由两个项目ex3_1与ex3_1_2组成。图3.4解决方案ex3_1.sln由项目ex3_1与ex3_1_2组成3.1C#程序组成2、项目(.csproj)(1)项目组成由图3.2可知C#项目由若干普通类(class)与窗体类(Form)组成。C#的项目是以命名空间的形式定义的。在项目中可以添加新窗体与新类。①添加新窗体的方法菜单|项目|添加Windows窗体|输入窗体名|添加②添加新类的方法菜单|项目|添加类|输入类名|添加。3.1C#程序组成【例3-1(2)】在项目ex3_1添加一个新窗体Form2与一个类class1。(1)添加新窗体Form2:菜单|项目|添加Windows窗体|输入窗体名Form2|添加。(2)添加新类class1菜单|项目|添加类|输入类名class1|添加。添加后项目ex3_1由属性、引用、类class1.cs、窗体Form1.cs与Form2.cs、程序Program.cs组成。图3.5项目ex3_1添加窗体Form2与类class13.1C#程序组成(2)资源管理器中项目内容项目文件(.csproj),如:ex3_1.csproj属性:Properties引用:命名空间,如:System窗体(.cs),如:Form1.cs窗体设计类(.Designer.cs);如:Form1.Designer.cs窗体资源类(.resx);如:Form1.resx类(.cs),如Program.cs其它(*.config,*.xml,*.ico,……)(3)项目命名空间的定义C#项目中所有类与窗体都被定义在项目命名空间内。如:打开项目ex3_1中类class1的代码编辑器可看ex3_1命名空间的定义代码如下:singSystem;//引用系统类组成的命名空间SystemusingSystem.Collections.Generic;usingSystem.Text;namespaceex3_1//定义项目命名空间ex3_1{classClass1//定义类Class1{}}3.1C#程序组成3.1C#程序组成打开项目ex3_1中窗体Form1的代码编辑器可看ex3_1命名空间的定义代码如下:usingSystem;//引用系统类组成的命名空间System…………usingSystem.Windows.Forms;//引用窗体类组成的命名空间Formsnamespaceex3_1//定义项目命名空间ex3_1{//由Form公有派生出窗体类Form1publicpartialclassForm1:Form{publicForm1()//定义窗体类Form1的构造函数{InitializeComponent();}//调用函数初始化窗体与控件}//该函数在Designer.cs文件中执行}3、命名空间(1)命名空间是类的定义集合如:系统命名空间System由Math、String、DateTine、Double等公共类的定义组成。在代码编辑器中输入System后用成员运算“.”可显示其所有公共类Math等,如图3.6所示。再如,项目命名空间ex3_1由Class1、Form1、Form2、Program类的定义组成。3.1C#程序组成图3.6System中的类(2)命名空间的定义格式namespace命名空间名{类1定义;…类n定义;}如:项目ex3_1的命名空间定义如下:namespaceex3_1{classClass1{}publicclassForm1:Form{}publicclassForm2:Form{}staticclassProgram{}}说明:实际类、窗体、程序的ex3_1命名空间的定义是分开。3.1C#程序组成3.1C#程序组成4.引用定义在C++中,当要使用输入输出对象cin、cout时,必须先用#include将头文件iostream.h包含到程序中来。#includeiostream.hvoidmain(void){inta;cina;cout“a=”aendl;}3.1C#程序组成同样当使用命名空间中的类时,必须先引用命名空间后使用类。命名空间引用定义格式:using命名空间名如在项目ex3_1的命名空间定义前,定义引用:usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Text;usingSystem.Windows.Forms;定义System等命名空间引用后,在后续代码中,可以使用System、……、System.Windows.Forms这些命名空间中的类。实验:在代码编辑器中,对下列引用定义语句作注解处理//usingSystem.Windows.Forms;则生成解决方案时:因为找不到基类Form,定义窗体类的语句:publicpartialclassForm1:Form出错!!!且Form1窗体设计器不能使用!!!3.1C#程序组成3.1C#程序组成5、窗体(1)窗体组成窗体由下列三个文件组成1)程序代码文件(*.cs)如:Form1.cs程序代码文件由引用定义、命名空间定义、窗体类定义、函数定义(控件事件驱动程序)、变量定义等组成。用户在此界面内的主要工作是编写事件驱动程序。3.1C#程序组成2)窗体设计类(*.Designer.cs)如:Form1.Designer.cs该程序主要用于窗体与控件的初始化工作,初始化工作主要由Form1.cs调用InitializeComponent()函数实现。在InitializeComponent()函数内有窗体与控件属性、方法初值的设置代码。一般不要用户管理。3)窗体资源(*.resx)如:Form1.resx该程序主要用于设置窗体与控件所需资料,如图像资源等。(2)添加新窗体C#项目中允许有多个窗体,添加新窗体的方法如下:方法一:菜单|项目|添加Windows窗体|Windows窗体|Form1|添加方法二:资源管理器|右击项目ex3_1|添加|Windows窗体|Form1|添加3.1C#程序组成3.1C#程序组成6、类文件类文件由引用定义、命名空间定义、类(或结构等)定义以及类函数组成。(1)主程序类Program.csC#项目中首先运行的是主程序类文件Program.cs该文件由引用定义、命名空间定义、主函数main()定义组成,用于对应用项目程序的初始化,及决定调用的启动窗体。3.1C#程序组成如:Program.cs:主程序类文件代码如下usingSystem;usingSystem.Collections.Generic;usingSystem.Windows.Forms;namespaceWindowsApplication1{staticclassProgram{//应用程序的主入口点。staticvoidMain()//主函数{Application.EnableVisualStyles();Application.SetCompatibleTextRenderingDefault(false);Application.Run(newForm1());//运行Form1窗体程序}//当项目中有多个窗体时,}//该程序将决定先启动运行哪一个窗体}3.1C#程序组成(2)添加类方法一:菜单|项目|添加类|类|class1|添加方法二:资源管理器|右击项目ex3_1|添加|类|class1|添加7.函数定义一个函数,包括函数的名
本文标题:第3章-C#程序设计
链接地址:https://www.777doc.com/doc-4710379 .html