java + (C++) != C#

类别:Java 点击:0 评论:0 推荐:

在我的印象中一直将C#归结为在C++基础上,参考JAVA语言设计的一种语言;

今天仔细的看了看C#的特性,发现这样的认识有失偏颇;

为了便于认识我们将一种计算机语言分成三部分比较;

 

基本的语法;

组织结构(面向对象);

特定功能;

 

ü         这三种语言在基本的语法结构上都是非常的想象的;

ü         C#和JAVA在面向对象方面是很相似的,抛开关键词的不同(继承的关键词,最终化的关键词等);

n         类型,

n         接口,

n         虚类,

n         类型间的单继承,

n         接口间的多继承,

n         类和接口间的多实现

可以说C#简直就是照搬了JAVA的面向对象的特性;

ü         特殊功能方面;C#为了保留C++强大的功能做出了不懈的努力,例如区分形式参数的值调用,引用调用等等;个人感觉为了保留指针能提供的功能C#做出了不懈的努力;委托实际上是函数指针的一种非指针实现;还有在类型级别加入对事件的支持;都能看到C#做出了很多改变;

 

个人感觉,C#是想把JAVA简单的面向功能部分和C++强大灵活的功能集成在一起,借助于.NET基类库和通用语言运行时实现一个完美的语言;

   可是我感觉她走了C++的老路,功能是挺多,挺强;但是没有给人有重点的感觉;反观JAVA掌握JAVA是一件令人愉快的事情,因为它目的明确,不会有太多让人混尧的功能;C#为了最大程度的兼容C++做出了不懈的努力;可是我觉得他要超越java语言还需要做得更简洁化;

 

让使用者通过使用来完成某些功能,而不是在语言级别添加对某些具体功能的支持;

C#有点剑走偏锋了!

 

本文地址:http://com.8s8s.com/it/it12067.htm