没有合适的资源?快使用搜索试试~ 我知道了~
转载,示例代码中有错误请大家自己修改使用,请谅解!
资源详情
资源评论
资源推荐
展现 C#世界
第一章 C# 简介
欢迎您加入 c#的世界!这一章将把您引进 C#的天地,
并回答一些相关的问题,如:您为什么要使用 C#,C++和
C#的主要有什么不同点,以及为什么 C#使开发更容易而且
还使您感到很有趣。为什么是另外一种编程语言?
必须回答的一个问题:当您已经使用 C++或 VB 从事企
业开发时,为什么还要学习另一种语言? 市场式的回答就
是:"在企业计算领域,C#将会变成为用于编写"下一代窗
口服务"(Next Generation Windows Services,简写为
NGWS )应用程序的主要语言。" 这一章将对用参数请求
提供支持,并陈列了 C#的一些功能。这一章会使您开胃的。
C#语言自 C/C++演变而来。但是,它现代、简单、完
全面向对象和类型安全。如果您是 C/C++程序员,学习曲
线将会很平坦。许多 C#语句直接借用您所喜爱的语言,包
括表达式和操作符。假如不仔细看,简直会把它当成 C++.
关于 C#最重要的一点:它是现代的编程语言。它简化
和现代化了 C++在类、名字空间、方法重载和异常处理等
领域。屏弃了 C++的复杂性,使它更易用、更少出错。
对 C#的易用有贡献的是减少了 C++的一些特性,不再
有宏、模板和多重继承。特别对企业开发者来说,上述功
能只会产生更多的麻烦而不是效益。使编程更方便的新功
能是严格的类型安全、版本控制、垃圾收集(garbage
collect)等等。所有的这些功能的目标都是瞄准了开发面向
组件的软件。
在继续呈现出更多的功能之前,我想停下来并在下面
说明 c#至关重要的各种要素。
简单、现代、面向对象、类型安全、版本控制、兼容、
灵活。
简单
C#具有 C++所没有的一 个优势就是学习简单。该语言
首要的目标就是简单。很多功能(还不如说是缺少了 C++
的一些功能)有助于 C#全方位的简单。在 C#中,没有 C+
+中流行的指针。默认地,您工作在受管理的代码中,在那
里不允许如直接存取内存等不安全的操作。我想没有 C++
程序员可以声称,从没有使用指针访问过不属于他们的内
存。与指针"戏剧性"密切相关的是"愚蠢的"操作。在 C++中,
有::、。、和->操作符,它们用于名字空间、成员和引用。
对于新手来说,操作符至今仍是学习的一道难关。C#弃用
其它操作符,仅使用单个操作符 ".".现在一个程序员所需要
理解的就是嵌套名字的注解了。
您不必记住基于不同处理器架构的隐含的类型,甚至
各种整型的变化范围。C#使用统一的类型系统,屏弃了 C+
+多变的类型系统。这种系统允许您把各种类型作为一个对
象查看,它是一个原始类型还是一个 full-blown 类。和其它
编程语言相比,由于加框(boxing)和消框(unboxing)
的机制,把简单类型当作对象处理并不能获得性能的改善。
稍后将详细解释加框和消框,但基本上仅当需要时才使用
对象访问简单类型这种技术。
首先,老练的程序员可能不喜欢它,但是整型和布尔
型如今终归是两种完全不同的数据类型。这就意味着原来 if
语句中错误的赋值现在会被编译出错,因为 if 语句只接受布
尔类型的值。再也不会出现误用赋值符为比较符这样的错
误!
C#同时也解决了存在于 C++中已经有些年头的多余东
西(redundancies)。这种多余包括常数预定义,不同字
符类型等。鉴于多余表单已经从该语言中消失,故一般在
C#中都可以使用表单了。
现代
您投入学习 C#的努力是一笔大投资,因为 C#是为编写
NGWS 应用程序的主要语言而设计。您将会发现很多自己
用 C++可以实现或者很费力实现的功能,在 C#中不过是一
部分基本的功能而已。对于企业级的编程语言来说,新增
的金融数据类型很受欢迎。您用到了一种新的十进制数据
类型,它专用于金融计算方面。如果不喜欢这种现成简单
的类型,根据您应用程序的特殊需求,可以很容易地创建
出新的一种数据类型。
我已经提到,指针不再是您编程武器的一部分。不要
太惊讶,全面的内存管理已经不是您的任务。运行时
NGWS 提供了一个垃圾收集器,负责 C#程序中的内存管理。
因内存和应用程序都受到管理,所以很必要增强类型安全,
以确保应用的稳定性。
对于 C++程序员,异常处理的已不是新的东西,但它是
C#的主要功能。C#的异常处理与 C++的不同点在于它是交
叉语言的(运行时的另一个功能)。在没有 C#之前,您必
须处理怪异的 HRESULTs,但现在由于使用了基于异常的
健壮的出错处理, 这一切都结束了。对于现代的应用程序,
安全是首要的,C#也不会例外。它提供了元数据语法,用
于声明下述 NGWS 安全模式的能力和许可。元数据是
NGWS 运行时的一个关键的概念,下一章将涉及到它更深
的含义。
面向对象
您不会预料一种新语言不支持面向对象的功能吧? C#
当然支持所有关键的面向对象的概念,如封装、继承和多
态性。完整的 C#类模式构建在 NGWS 运行时的虚拟对象
系统(VOS,Virtual Object System)的上层,VOS 将在
下章描述。对象模式只是基础的一部分,不再是编程语言
的一部分。您一开始必须关注的事,就是不再有全局函数、
变量或者是常量。所有的东西都封装在类中,包括事例成
员(通过类的事例——对象可以访问)或都静态成员(通
过数据类型)。这些使 C#代码更加易读且有助于减少潜在
的命名冲突。定义类中的方法默认是非虚拟的(它们不能
被派生类改写)。主要论点是,这样会消除由于偶尔改写
方法而导致另外一些原码出错。要改写方法,必须具有显
式的虚拟标志。 这种行为不但缩减速了虚拟函数表,而且
还确保正确版本的控制。
使用 C++编写类,您可以使用访问权限(access
modifiers) 给类成员设置不同的访问等级。C#同样支持
private、protected 和 public 三种访问权限 ,而且还增加了
剩余63页未读,继续阅读
心未老的大叔
- 粉丝: 12
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0