菜单
  

    对于C++程序员,异常处理的切不是新的东西,但它是C#的主要功能。C#的异常处理与C++的不同点在于它是交叉语言的(运行时的另一个功能)。在没有C#之前,您必须处理怪异的HRESULTs,但现在由于使用了基于异常的健壮的出错处理。
     对于现代的应用程序,安全是首要的,C#也不会例外。它提供了元数据语法,用于声明下述NGWS安全模式的能力和许可。元数据是NGWS运行时的一个关键的概念,下一章将涉及到它更深的含义。
      3.面向对象
      C#支持所有关键的面向对象的概念,如封装、继承和多态性。完整的C#类模式构建在NGWS运行时的虚拟对象系统(VOS,Virtual Object System)的上层,VOS将在下章描述。对象模式只是基础的一部分,不再是编程语言的一部分。 所有的东西都封装在类中,包括事例成员(通过类的事例--对象可以访问)或都静态成员(通过数据类型)。这些使C#代码更加易读且有助于减少潜在的命名冲突。  定义类中的方法默认是非虚拟的(它们不能被派生类改写)。主要论点是,这样会消除由于偶尔改写方法而导致另外一些原码出错。要改写方法,必须具有显式的虚拟标志。 这种行为不但缩减速了虚拟函数表,而且还确保正确版本的控制。
      使用C++编写类,可以使用访问权限(access modifiers) 给类成员设置不同的访问等级。C#同样支持private、protected 和public 三种访问权限 ,而且还增加了第四种:internal。有关访问权限。
     4.类型安全
    C#中拥有一个指针,能自由地把它强制转换成为任何类型,包括诸如把一个int*(整型指针)强制转换成一个double *(双精度指针)。只要内存支持这种操作。
    C#实施最严格的类型安全,以保护自己及垃圾收集器(garbage collector)。所以必须遵守C#中一些相关变量的规则:不能使用没有初始化的变量。对于对象的成员变量,编译器负责清零。而局部变量,则由自己清零。当使用一个没有初始化的变量时,编译器会教你怎么做。优点是能够避免由于使用不经初始化的变量计算结果而导致的错误,而还不知道这些奇怪的结果是如何产生的。
    C#取消了不安全的类型转换。不能把一个整型强制转换成一个引用类型(如对象),而当向下转换时,C#验证这种转换是正确的。(也就是说,派生类真的是从向下转换的那个类派生出来的。) 边界检查是C#的一部分。再也不会出现这种情况:当数组实际只定义了n-1个元素,却超额地使用了n个元素。  算术运算有可能溢出终值数据类型的范围。C#允许在语句级或应用程序级检测这些运算。在允许检测溢出的情况下,当溢出发生时将会抛出一个异常。在C#中,被传递的引用参数是类型安全的。
    5.版本可控(Versionable)
     在过去的几年中,几乎所有的程序员都至少有一次不得不涉及到众所周知的"DLL地狱"。该问题起因于多个应用程序都安装了相同DLL名字的不同版本。有时,老版本的应用程序可以很好地和新版本的DLL一起工作,但是更多的时候它们会中断运行。 NGWS runtime 将对您所写的应用程序提供版本支持。C#可以最好地支持版本控制。尽管C#不能确保正确的版本控制,但是它可以为程序员保证版本控制成为可能。有这种支持,一个开发人员就可以确保当他的类库升级时,仍保留着对已存在的客户应用程序的二进制兼容。
     6.兼容
     C#并没有存在于一个封闭的世界中。它允许使用最先进的NGWS的通用语言规定(Common Language Specification,简写为CLS)访问不同的API。CLS规定了一个标准,用于符合这种标准的语言的内部之间的操作。为了加强CLS的编译,C#编译器检测所有的公共出口编译,并在通不过时列出错误。 当然,也可以访问旧一点的COM对象。NGWS运行时提供对COM透明的访问。 
  1. 上一篇:STC90C516单片机液晶显示屏时间系统设计+电路图+源程序
  2. 下一篇:用VC++实现串口通信服务
  1. 超大规模集成电路中软模块的布局

  2. 光电系统近似模型研究

  3. PID控制在非线性时延离散混沌系统中的应用

  4. 基于差分进化算法的自动...

  5. 基于混沌的图像加密通信...

  6. MPS模块化生产系统的开发及研究+PLC梯形图

  7. 数字化钢轨精细打磨装备4G无线通信系统设计

  8. 大众媒体对公共政策制定的影响

  9. 中考体育项目与体育教学合理结合的研究

  10. 当代大学生慈善意识研究+文献综述

  11. 杂拟谷盗体内共生菌沃尔...

  12. 乳业同业并购式全产业链...

  13. 河岸冲刷和泥沙淤积的监测国内外研究现状

  14. 十二层带中心支撑钢结构...

  15. java+mysql车辆管理系统的设计+源代码

  16. 电站锅炉暖风器设计任务书

  17. 酸性水汽提装置总汽提塔设计+CAD图纸

  

About

751论文网手机版...

主页:http://www.751com.cn

关闭返回