C#客户资源管理系统设计+文献综述(3)
时间:2018-05-23 12:02 来源:毕业论文 作者:毕业论文 点击:次
1.5 开发采取的方法和技术 类:在C#中类的声明与C++和Java的类的声明较为相似。与C++相比,C#中的类继承有所差异。与Java相比而言,他们之间相同的是,一个结构体可以实现接口(interface)。Java的关键字import在C#中已经被替换成了关键字using,它在编程中起到了同样的作用。 C#中的类可以是抽象的和不可继承的:假如一个类被申明成abstract的话,他是不能被实例化的,它只能是被用做为一个基类,C#中的关键字lock就像Java中的关键字final,它申明的一个类不是抽象的,但是它也不能被用做另一个类的基类界面:就像是在Java中的一样,一个界面是一组方法集合的抽象定义。当一个类或结构体实现一个界面的时候,它必须实现这个界面中定义的所有方法。 在Java中,一个接口是一组方法集合的抽象定义.当一个类或结构体实现一个接口的时候,它必须实现这个接口中定义的所有方法.一个单一的类可以实现几个接口.也许以后会出现一些微妙的差别,但是这个特点看起来与Java相比没有变化。布尔运算:条件表达式的结果是布尔数据类型,布尔数据类型是这种语言中独立的一种数据类型.从布尔类型到其他类型没有直接的转换过程.布尔常量true和false是C#中的关键字.错误处理:如Java中那样,通过抛出和捕捉异常对象来管理错误处理过程.内存管理:由底层.NET框架进行自动内存垃圾回收。 布尔运算:条件表达式的结果是布尔数据类型,布尔数据类型是这种语言中独立的一种数据类型,从布尔类型到其他类型没有直接的转换过程,布尔常量true和false是C#中的关键字。错误处理:如Java中那样,通过抛出和捕捉异常对象来管理错误处理过程。 内存管理:由底层.NET框架进行自动内存垃圾回收。一个基本的C#类中包含数据成员、属性、构造器和方法。属性可以是静态或实例成员。 接口:是其他类型为确保它们支持某些操作而实现的引用类型。接口从不直接创建而且没有实际的表示形式,其他类型必须转换为接口类型。 一个接口定义一个协定。实现接口的类或结构必须遵守其协定。接口可以包含方法、属性、索引器和事件作为成员。 强类型:C#是一个强类型的语言,它的数值类型有一些可以进行隐式转换,其他的必须显式转换,隐式转换的类型只能是长度短的类型转换成长的类型,int可以转换成long、float、double、decimal,反之必须显式的转换。 编译:程序直接编译成标准的二进制可执行形式.但C#的源程序并不是被编译成二进制可执行形式,而是一种中间语言(IL),类似于JAVA字节码。如果前面的Hello World程序被保存成一个文本文件并被命名为Hello.cs,它将被编译成命名Hello.exe的可执行程序。 C#程序不能直接编译成标准的二进制可执行形式,与 Java 类似,它被编译成为中间代码(Microsoft Intermediate Language),然后通过 .NET Framework 的虚拟机——被称之为通用语言执行层(Common Language Runtime, CLR)——执行。 一个C#的结构体与C++的结构体是相似的,因为它能够包含数据声明和方法.但是,不像C++,C#结构体与类是不同的而且不支持继承.但是,与Java相同的是,一个结构体可以实现接口。 预编译:C# 中存在预编译指令支持条件编译,警告,错误报告和编译行控制.可用的预编译指令有:#define,#undef,#if,#elif,#else,#endif,#warning,#error,#line。 没有了#include伪指令,无法再用#define 语句对符号赋值,所以就不存在源代码替换的概念--这些符号只能用在#if和#elif伪指令里.在#line伪指令里的数字(和可选的名字)能够修改行号还有#warning和#error输出结果的文件名。 (责任编辑:qin) |