开发者社区


项目管理 | IT/商务管理 | 职涯
首页 - 管理和职涯
管理&职涯
全文搜索:   

看实例,尝试C#
作者: ZDNet China Developer
2001-06-14 17:58:59



Microsoft .NET即将成为开发企业软件的主要平台,而C#的优势在于可以充分利用.NET平台所提供的全部工具。C#是从C++衍生出来的面向对象的语言,其特色在于类型安全的程序设计。本文将通过剖析一个名为Greeter的Windows 应用程序的实例,来介绍C# 语言。

Greeter是个对话式应用程序,先接收用户名输入,然后显示一个问候语,如图A所示。该程序比诸如"hello, world" 这样的程序稍微复杂些。Greeter程序是在Visual Studio.NET.软件的Beta1版本下用C#编写的。该程序的源代码位于this sidebar.


图A Greeter程序运行时的运行结果 Greeter

该应用程序由一个名为GreeterForm 的类构成,该类完全包含在文件GreeterForm.cs中。类GreeterForm派生自.NET 框架类 System.WinForms.Form (源程序中的第十行)。 C#和.NET体系都支持名称空间。名称空间是个分组机制,它可以把系统中的数据类型在逻辑上组织在一起。一个名称空间可以包含其他名称空间或者数据类型。System.WinForms.Form表示类Form在WinForms的名称空间中, 而类WinForms又位于System的名称空间中。 WinForms名称空间中包含了标准的Windows 程序设计中的数据类型。

GreeterForm 包含了程序的入口点:即静态的方法Main (第71行)。 同C++类似,C#既支持静态方法,也支持实例类方法。不管C#程序是用于命令行式的界面,还是用于Windows程序界面,程序中的入口点总是名为Main的静态方法,对于那些熟悉Windows SDK程序设计的人来说,不存在全局的WinMain 函数(在C#中没有全局函数)。Main可以不带形式参数,比如GreeterForm就是这样的,Main可以不返回任何值,也可以返回一个整数,形式参数可以取任何名称,但必须定义为字符串数组。C#支持方法重载,虽然Main是程序中唯一的入口点,它也可以被重载。

Main方法中调用了Application.Run方法 ,Run方法的实在参数是GreeterForm的一个新对象。Application 类是在名称空间System.WinForms 下定义的。指示语using System.WinForms; (源程序第7行)把名称空间System.WinForms 中定义的类型引入到当前的名称空间中。这些数据就可以直接在Application中引用,而无需限定。顺便说明一下,可以把基类GreeterForm直接定义为Form,因为Visual Studio向导可以为你自动生成完整的限定名称。

Application.Run方法在当前线程中启动了一个message循环,显示出表单GreeterForm。 一旦用户点击了该表单的close 按钮,Run就返回到Main,并且释放表单。一旦Main 结束,整个程序也结束。Main 方法和Application 类都提供了类似于MFC的CWinApp 类的功能。类Application 和CWinApp 都提供了封装了message信息循环的Run 方法。

【下一页】
声明:
Builder.com.cn(原ZDNet China应用开发频道)原创文章版权所有,未经许可严禁转载,且不构成投资建议。
近期相关报道:
实用技术文档
J2me XML
C/C++ C#
Java Oracle
Mysql .Net
VB.NET CSS
SQL Server 数据库
SQL UNIX
Linux Jsp
PHP Perl
Javascript IIS
XHTML ColdFusion
ASP/ASP.NET Apache
AJAX
订阅技术邮件
订阅"技术圈"杂志!请在下面选择您感兴趣的专题,填写e-mail地址,然后按订阅按钮:
应用开发管理
VS.NET 周刊
Database 周刊
WEB Service周刊
JAVA 周刊
IT 认证
Windows服务器周刊
互联网开发
当Windows Server 2008专家得5000元现金大奖
CNET NETWORKS 中国: 爱卡汽车网 | CNET科技资讯网 | e询网 | CWEEK | 蜂鸟网 | GameSpot China | 个人电脑 | PChome | SPN | 网友世界 | ZDNet China | 中关村在线
CNET NETWORKS 美国: BNET | CNET.com | CNET Download.com | CNET News.com | CNET Reviews | CNET Shopper.com | GameSpot | MP3.com | mySimon | Release 1.0 | Search.com | TechRepublic | TV.com | Webshots | ZDNet
Copyright (c) 2006 CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
ZDNet 公司标识是 CNET Networks公司注册服务商标。
中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号