C基础培训教材(001).docxVIP

  • 1
  • 0
  • 约30.1万字
  • 约 380页
  • 2021-06-27 发布于山东
  • 举报
精品文档 精品文档 PAGE PAGE331 精品文档 PAGE C#基础教程 第一章 C#语言基础 本章介绍C#语言的基础知识,希望具有C语言的读者能够基本掌握C#语言,并以此为基础,能够进一步学 习用C#语言编写 window应用程序和 Web应用程序。自然仅靠一章的内容就完全掌握 C# 语言是不可能的,如 需进一步学习 C#语言,还需要认真阅读有关 C#语言的专著。 1.1 C#语言特点 Microsoft.NET(以下简称.NET)框架是微软提出的新一代Web软件开发模型,C#语言是.NET框架中新一代 的开发工具。C#语言是一种现代、面向对象的语言,它简化了 C++语言在类、命名空间、 方法重载和异样 办理等方面的操作,它摒弃了C++的复杂性,更易使用,更少出错。它使用组件编程,和VB同样容易使用 。C#语法和C++和JAVA语法特别相像,如果读者用过C++和JAVA,学习C#语言应是比较轻松的。 用C#语言编写的源程序,必须用C#语言编译器将C#源程序编译为中间语言(MicroSoftIntermediate Language,MSIL)代码,形成扩展名为exe或dll文件。中间语言代码不是CPU可履行的机器码,在程序运行 时,必须由通用语言运行环境(CommonLanguageRuntime,CLR)中的既时编译器(JUSTINTime,JIT)将 中间语言代码翻译为CPU可履行的机器码,由CPU履行。CLR为C#语言中间语言代码运行提供了一种运行时 环境,C#语言的CLR和JAVA语言的虚构机近似。这种履行方法使运行速度变慢,但带来其余一些利处,主 要有: l通用语言规范(CommonLanguageSpecification,CLS):.NET系统包括如下语言:C#、C++、VB、J# ,他们都恪守通用语言规范。任何恪守通用语言规范的语言源程序,都可编译为相同的中间语言代码, 由CLR负责履行。只需为其余操作系统编制相应的 CLR,中间语言代码也可在其余系统中 1 运行。 自动内存管理:CLR内建垃圾收集器,当变量实例的生命周期结束时,垃圾收集器负责收回不被使用 的实例占用的内存空间。不必象C和C++语言,用语句在堆中成立的实例,必须用语句释放实例占用的内 存空间。也就是说, CLR具有自动内存管理功能。 交错语言办理:由于任何恪守通用语言规范的语言源程序,都可编译为相同的中间语言代码,不同语 言设计的组件,能够互相通用,能够从其余语言定义的类派生出本语言的新类。 由于中间语 言代码由CLR 负责履行,因此异样办理方法是一致的, 这在调试一种语言调用另一种语言的子程序时, 显 得特别方便 。 增加安全:C#语言不支持指针,一切对内存的接见都必须经过对象的引用变量来实现,只允许接见内 存中允许接见的部分,这就防备病毒程序使用非法指针接见私有成员。也防止指针的误操作产生的错误 CLR履行中间语言代码前,要对中间语言代码的安全性,完整性进行考证,防备病毒对中间语言代码的 改正。 版本支持:系统中的组件或动向联接库可能要升级,由于这些组件或动向联接库都要在注册表中注册 ,由此可能带来一系列问题,比如,安装新程序时自动安装新组件替换旧组件,有可能使某些必须使用 旧组件才能够运行的程序,使用新组件运行不了。在 .NET中这些组件或动向联接库不必在 注册表中注册 ,每个程序都能够使用自带的组件或动向联接库, 只需把这些组件或动向联接库放到运行程 序所在文件 夹的子文件夹bin中,运行程序就自动使用在bin文件夹中的组件或动向联接库。由于不需要在注册表中 注册,软件的安装也变得容易了,一般将运行程序及库文件拷贝到指定文件夹中就能够了。 2 完全面向对象:不象C++语言,即支持面向过程程序设计,又支持面向对象程序设计, C#语言是完全 面向对象的,在C#中不再存在全局函数、全局变量,所有的函数、变量和常量都必须定义在类中,防止 了命名矛盾。C#语言不支持多重继承。 1.2 编写控制台应用程序 使用SDK命令行工具编写控制台程序 第一个程序总是特别简单的, 程序首先让用户经过键盘输入自己的名字, 然后程序在屏幕上 打印一条欢 迎信息。程序的代码是这样的 : usingSystem;//导入命名空间。//为C#语言新增解释方法,解释到本行结束classWelcome//类定义,类的观点见下一节 {/*解释开始,和C语言解释用法相同解释结束*/ staticvoidMain()//主程序,程序入口函数,必须在一个类中定义{Console.WriteLine(请键入你的姓名:);//控制台输出字符串Console.ReadLine();//从键盘读入数据,输入回车结束Console.WriteLine(欢迎!); } } 能够用任意一

文档评论(0)

1亿VIP精品文档

相关文档