和C,C++这些语言比起来,java很简单,去掉指针的java,非常好理解,自动垃圾回收机制也很好,JDK1.5推出以后,性能上又有了很大提高,有人提出让java代替C语言成为基本语言。足够说明java简单易学的这个优点。其次,java的功能强大, EJB3.0的推出使java成为了大型项目的首选。J2ME在手机游戏开发的作用也是无用质疑的。至于桌面程序, NetBeans和Eclipse都是利用java开发的,界面不是java的缺点。还有就是java的跨平台性。
java功能强大的背后是其复杂性,以web来看,现在流行的框架有很多, struts,spring,jQuery等等,无疑增加了java的复杂性。对于一个大型项目,如果用java来做,可能需要9个月,并且可能需要翻阅10本以上的书,但如果用ruby来作,3个月,3本书就足够了,而.net也不过3,4本书足够。性能方面,同一个项目用java和.net来作,结果开发周期,.net是java的一半,性能java是.net的十分之一,代码量java是.net的三倍。