网上COPY以及整理回答网友的问题。大家可以加入我新建的QQ群一起聊聊,共同学习。
  QQ群号:109967503c#的一些特征:
完全支持类和面向对象编程,包括接口和继承、虚函数和运算符重载的处理。
定义完整、一致的基本类型集。
对自动生成XML文档说明的内置支持。
自动清理动态分配的内存。
可以用用户定义的特性来标记类或方法。这可以用于文档说明,对编译有一定的影响(例如,把方法标记为只在调试时编译)。
对.NET基类库的完全访问权,并易于访问Windows API。
可以使用指针和直接内存访问,但C#语言可以在没有它们的条件下访问内存。
以VB的风格支持属性和事件。
改变编译器选项,可以把程序编译为可执行文件或.NET组件库,该组件库可以用与ActiveX控件(COM组件)相同的方式由其他代码调用。
C#可以用于编写ASP.NET动态Web页面和XML Web服务。
对于上述大多数特性,VB.NET和Managed C++也具备。但C#从一开始就使用.NET,对.NET特性的支持不仅是完整的,而且提供了比其他语言更合适的语法。C#语言本身非常类似于Java,但其中有一些改进,因为Java并不是为应用于.NET环境而设计的。c#的缺点:
C#的两个局限性。其一是该语言不适用于编写时间急迫或性能非常高的代码,例如一个要运行1000或1050次的循环,并在不需要这些循环时,立即清理它们所占用的资源。在这方面,C++可能仍是所有低级语言中的佼佼者。其二是C#缺乏性能极高的应用程序所需要的关键功能,包括保证在代码的特定地方运行的内联函数和析构函数。但这类应用程序非常少。JAVA优点:
引用:个人认为java为什么成功,为什么会这么流行,是因为java到处都是规范,真正的东西其实很少,不管是j2ee,ejb,jdbc,ejb容器,web容器等等,甚至是java虚拟机也都是规范而已,这样的好处就是规范定义了大的方向,剩下的就看百家齐放,不管谁实现的好,那么都是在推动java的发展,实现的越好,那么用java的人也就越多,那么自己就更流行,如果不是推行规范,仅仅是个人实现的话,那么一个公司早晚会有失策的时候,早晚也会有观点跟不上潮流的时候,那么就会很快被市场抛弃。java就是抓住这一点,推出规范,让大家去实现,一切都是接口,一切都是抽象的。感觉真的很厉害:) java可以说是集合了大多数语言的优点产生的精华。此外还有在别的领域如:从手机开发J2SE  一般的web开发  还有企业级的开发 J2EE 都是java。
还有高性能、分布性、强大性、解释性、可移植性等
其实最大的优点摸过于跨平台、分布性这两点可以说是极大的为安全和维护做了一次很大的升级。
java的很多框架都是很多编程经验所积累的结晶;spring webwork struts ... 很多流行的框架都是java的优势
另外java的开发工具也很多你刚才就只说了 两种其实还有很多开发工具netbeans,Intellij IDEA ,EmEditor ,Gcreater, sun也有自己的一套开发工具,其实开发java的工具又只这几种,还有,只你没有深入的了解。java缺点:1。解释型语言,运行速度效率极低,不支持底层操作! (致命) 
2。Java一般不用于建立大型项目。 
3。取消了指针操作,不够C语言那样灵活。(既是优点,又是缺点)区别:c#吸收了JAVA和c++的一些特点,如果有时间的话应该了解C++的基础知识,这样对于学JAVA和c#都有帮助,至于JAVA和C#哪个更好,是开发习惯问题了,JAVA入门比较难,但是基础知识只要牢固了提高更快,C#入门很容易,但是要提高很难.
其实个人觉得,语言上没有多大的差别,关键看个人的爱好,选择适合自己学习的语言就好啦。

解决方案 »

  1.   

    你说的JAVA优点也是JAVA的缺点. 也就是因为框架太多, 给使用者带来选择上的难度. 而框架之间的兼容性得不到保障, 这也给使用者带来不便.
    C++是低级语言? my god. 
      

  2.   

    C#的两个局限性。其一是该语言不适用于编写时间急迫或性能非常高的代码,例如一个要运行1000或1050次的循环,并在不需要这些循环时,立即清理它们所占用的资源。在这方面,C++可能仍是所有低级语言中的佼佼者。其二是C#缺乏性能极高的应用程序所需要的关键功能,包括保证在代码的特定地方运行的内联函数和析构函数。但这类应用程序非常少。1. C# runs loop very fast without bound checking. Please use unsafe mode.
    2. C# runtime dynamic inline, and also has dipose function as an alternative of destructor. 
      

  3.   

    c#毫无疑问是有史以来最强大的编程语言,代表了软件开发和软件工程研究的最高水平。我觉得唯一的不足,同时也是致命的缺点就是CIL。太容易反编译了,谁希望自己的劳动成果被别人轻易窃取呢。C#已经成为主流,用来做界面,做数据库,做WEB应用但核心代码仍然会用C/C++等其它语言开发吧。