基本信息
编辑推荐
《C#教程》是高职市场主计算机规划教材
内容简介
目录
1.1 c#语言简介
1.1.1 C#的由来
1.1.2 C#特点
1.2.NET开发平台
1.2.1.NET框架概述
1.2.2 VisualStudio2008的安装
1.2.3 VisualStudio2008的集成开发环境
1.3 VisualC样开发环境
1.3.1 新建VisualC#项目
1.3.2 标题栏
1.3.3 菜单栏
1.3.4 工具栏
1.3.5 工具箱
1.3.6 窗口
1.4 使用帮助系统
习题
第2章 C#语言基础
2.1 一个简单例子(控制台方式):计算圆面积
2.2 数据类型
前言
本书以Microsoft Visual Studio 2008作为平台,包含教程、练习、实验,教程部分首先熟悉开发环境,然后比较系统地介绍C#的编程基础、面向对象编程基础和进阶。在此基础上系统介绍 Windows应用程序、GDI+编程、文件操作、数据库应用、C#多线程技术。教程中根据需要节有小综合,章有大综合,这样更便于逐步积累、形成系统。练习一般包括选择题、填空题、问答题和编程题等题型,便于梳理知识和锻炼能力。实验先跟着教程实例做,然后思考与练习,实验内容更具有弹性。
本书不仅适合C#课程教学,也非常适合需要掌握C#语言的用户学习和开发应用系统参考。只要阅读本书,结合上机实验进行操作练习,就能在较短的时间内基本掌握C#语言及其应用开发技术。
本教程由电子工业出版社的教学服务平台(http://www.hxedu.com.cn)为读者提供服务,可免费下载教学课件、实例源文件等资料。
本书由南京师范大学郑阿奇主编。参加本书编写的还有陈瀚、郑进、陶卫冬、邓拼搏、严大牛、卢海艇、韩翠青、王海娇、刘博宇等。还有一些同志对本书的编写提供了许多帮助,在此一并表示感谢!
由于作者水平有限,不当之处在所难免,恳请读者批评指正。
编 者
2010年7月
媒体评论
(2)现代性
许多在传统语言中必须由用户自己来实现的或者干脆没有的特征,都成为基础C#实现的一个部分。金融类型对于企业级编程语言来说是很受欢迎的一个附加类型。用户可以使用一个新的decimal数据类型进行货币计算。
安全性是现代应用的头等要求,c#通过代码访问安全机制来保证安全性。根据代码的身份来源,可以分为不同的安全级别,不同级别的代码在被调用时会受到不同的限制。
(3)面向对象
c#支持面向对象的所有关键概念:封装、继承和多态性。整个c#的类模型是建立在.NET虚拟对象系统(VOSVirtualObjectSystem)之上的,这个对象模型是基础架构的一部分,而不再是编程语言的一部分——它们是跨语言的。
C#中没有全局函数、变量或常数。每样东西必须封装在一个类中,或者作为一个实例成员(通过类的一个实例对象来访问),或者作为一个静态成员(通过类型来访问),这会使用户的C#代码具有更好的可读性,并且减少了发生命名冲突的可能性。
多重继承的优劣一直是面向对象领域争论的话题之一,然而在实际的开发中很少用到。在多数情况下,从多个基类派生所带来的问题比这种做法所能解决的问题要更多,因此C}}的继承机制只允许一个基类。如果需要多重继承,用户可以使用接口。
(4)类型安全性
当用户在C/C++中定义了一个指针后,就可以自由地把它指向任意一个类型,包括做一些相当危险的事,如将一个整型指针指向双精度型数据。只要内存支持这一操作,它就会凑合着工作,这当然不是用户所设想的企业级编程语言类型的安全性。与此相反,C}}实施了最严格的类型安全机制来保护它自身及其垃圾收集器。因此,程序员必须遵守关于变量的一些规定,如不能使用未初始化的变量。对于对象的成员变量,编译器负责将它们置零。局部变量用户应自己负责。如果使用了未经初始化的变量,编译器会提醒用户。这样做的好处是:用户可以摆脱因使用未初始化变量得到一个可笑结果的错误。
边界检查。当数组实际上只有,z一1个元素时,不可能访问到它“额外”的数组元素,z,这使重写未经分配的内存成为不可能。
算术运算溢出检查。C#允许在应用级或语句级检查这类操作中的溢出,当溢出发生时会出现一个异常。
c#中传递的引用参数是类型安全的。
(5)版本处理技术
在过去的几年中,几乎所有的程序员都和所谓的“DLL地狱”打过交道,产生这个问题是因为许多计算机上安装了同一DLL的不同版本。DLL是Dynamic Link Librarv的缩写,是一种编译为二进制机器代码的函数库。DLL在调用程序运行时才被调入内存执行,而不是在编译时链接到可执行程序内部的,这样可以使程序代码在二进制级别实现共享,而不必在每个应用程序中编译一个副本。
……
书摘
整型和布尔数据类型是完全不同的类型。这意味着if判别式的结果只能是布尔数据类型,如果是别的类型则编译器会报错。那种搞混了比较和赋值运算的错误不会再发生。
(2)现代性
许多在传统语言中必须由用户自己来实现的或者干脆没有的特征,都成为基础C#实现的一个部分。金融类型对于企业级编程语言来说是很受欢迎的一个附加类型。用户可以使用一个新的decimal数据类型进行货币计算。
安全性是现代应用的头等要求,c#通过代码访问安全机制来保证安全性。根据代码的身份来源,可以分为不同的安全级别,不同级别的代码在被调用时会受到不同的限制。
(3)面向对象
c#支持面向对象的所有关键概念:封装、继承和多态性。整个c#的类模型是建立在.NET虚拟对象系统(VOSVirtualObjectSystem)之上的,这个对象模型是基础架构的一部分,而不再是编程语言的一部分——它们是跨语言的。
C#中没有全局函数、变量或常数。每样东西必须封装在一个类中,或者作为一个实例成员(通过类的一个实例对象来访问),或者作为一个静态成员(通过类型来访问),这会使用户的C#代码具有更好的可读性,并且减少了发生命名冲突的可能性。
多重继承的优劣一直是面向对象领域争论的话题之一,然而在实际的开发中很少用到。在多数情况下,从多个基类派生所带来的问题比这种做法所能解决的问题要更多,因此C}}的继承机制只允许一个基类。如果需要多重继承,用户可以使用接口。
(4)类型安全性
当用户在C/C 中定义了一个指针后,就可以自由地把它指向任意一个类型,包括做一些相当危险的事,如将一个整型指针指向双精度型数据。只要内存支持这一操作,它就会凑合着工作,这当然不是用户所设想的企业级编程语言类型的安全性。与此相反,C}}实施了最严格的类型安全机制来保护它自身及其垃圾收集器。因此,程序员必须遵守关于变量的一些规定,如不能使用未初始化的变量。对于对象的成员变量,编译器负责将它们置零。局部变量用户应自己负责。如果使用了未经初始化的变量,编译器会提醒用户。这样做的好处是:用户可以摆脱因使用未初始化变量得到一个可笑结果的错误。
边界检查。当数组实际上只有,z一1个元素时,不可能访问到它“额外”的数组元素,z,这使重写未经分配的内存成为不可能。
算术运算溢出检查。C#允许在应用级或语句级检查这类操作中的溢出,当溢出发生时会出现一个异常。
c#中传递的引用参数是类型安全的。
(5)版本处理技术
在过去的几年中,几乎所有的程序员都和所谓的“DLL地狱”打过交道,产生这个问题是因为许多计算机上安装了同一DLL的不同版本。DLL是Dynamic Link Librarv的缩写,是一种编译为二进制机器代码的函数库。DLL在调用程序运行时才被调入内存执行,而不是在编译时链接到可执行程序内部的,这样可以使程序代码在二进制级别实现共享,而不必在每个应用程序中编译一个副本。