java新手,应该如何快速学习

我之前是做.NET开发的,大概有一年的开发经验吧。做的项目都是webform的BS系统。对mvc有个很肤浅的认识,但是具体的实现还不会。最近自学java,但是不知道从哪儿入手。请各位指点一二,如何能够快速的掌握java开发的技术。

如果您是java的初学者,最想知道的莫过于如何才能学好java。以下是我的几点建议。
1.奠定java的语法基础
学习java的第一步,就是学会使用java这个程序语言来编写程序,而学习程序语言的第一步就是熟悉其语法的使用。程序语言就是一门语言,所不同的是这种语言是用来与计算机沟通的,所以若要熟悉语言,使用的方法莫过于多看别人写的程序,了解别人是如何使用java来解决问题的,然后针对同样的程序进行练习,并从实例中测试自己是否真正了解到如何解决问题。
2.运用基本的j2seAPI
除了java语言本身的语法之外,懂得运用j2se的API也是一个必要的课题,然而在这么多的API下,您必然想知道哪些API是必要或常用的。我的建议是先掌握字符串处理、异常处理、容器(Container)、输入/输出(I/O)、线程(Thread)这几个主题。
API的内容庞大,没有任何一本是可以详细讲解每个API如何运用,您也不需要将API背诵下来,您要懂得查询API文件说明,虽然API文件都是英文的,但基本上只要有基本的英文阅读能力就足以应付查询需求。以j2se5.0来说,您可以从下面的网址查询到API文件说明:[code="java"]http://java.sun.com/j2se/1.5.0/docs/api/[/code]。
3.使用搜索引擎
作为一个开发人员,懂得使用搜索引擎来寻找问题的答案是一项必要的能力。我习惯使用Google(http://www.google.com/),几个简单的关键词通常就可以为您找到问题的答案。
4.加入论坛参与讨论
在学习的过程中,如果有人可以共同讨论,将会加速学习的速度。您可以找一个讨论区并摸索当中的资源,这可以省去不少的学习时间。在中文讨论区中我建议多参与java技术论坛,在论坛上有相当丰富的资源。
5.学习地图
在学习完基本的j2se之后,您会想要实际应用java来编写程序,如果民需要编写窗口程序,可以学习Swing窗口设计;如果您要编写数据库相关软件,可以学习JDBC;如果您想要朝Web程序发展,可以学习JSP/Servlet;如果您想要学习手机程序开发,可以朝j2me方向学习。
在java的官方网站上,有一篇java技术概念的地图(Java Technolog Concept Map),其中以图表的方式描绘出了各种需求下的学习方向参考。您可以浏览该图表来了解java各个技术主题之间有什么关联,以确定您未来学习的方向。

java能做的.NET都能做,.net比java庞大的多,但是java开源的框架很多也很杂。.NET因为有vs这么方便的编辑工具,导致很多.NET程序员过分依赖它。建议你搞java的时候初期不要使用任何编辑工具,这样可以强化你对java基础知识的了解。很多.NET的语法及工具类在java这边都被简化,你自己平衡吧。

楼上回答得很好。

实际学习过程当中,最好自己找一两个小程序,试着写一写(按规范的方式来写),完了之后再改一改,效果会很好。

首先声明 java和.net没有能不能做的概念 两个东西如果说谁能做什么谁不能做什么 其实都是基于虚拟机架构的 基本都是一类 但是java有强大的中间件支持(我指的是中间件不是框架) 而.net却没有 再就是java可以跨平台运行(.net不是不能跨平台,按照它的设计是完全可以的,但是微软要卖windows,不能跨平台是故意的)。
如果说什么都能做的那只能学c,汇编等中低级语言,没别的捷径。
如果说想学好java 其实不得不说 如果你是java转.net的 估计有3,4个月就能搞定,但是从.net转java就要看你.net的能力了 语法没什么 都差不多 而且c#比java语言明显先进 主要问题还是出在javaee的学习上 首先用.net开发很多东西都是拖拽 但是java没有这种东西 所有的东西都得自己做 而且对于中间件的学习上java也是一样的 东西都要自己写 不像微软的sharepoint biztalk配置非常人性化。
但是终究这种高级语言技术都有相同之处 所以我觉得从.net转java的最需要的就是改变自己的思维方式 不要依赖ide 因为java本身就是不用ide照样可以做 其实.net也可以 但是估计没多少人做过。
而且个人认为 如果有时间还是看看c/c++ 因为这种高级语言技术有很多东西是做不了的 所以多看看没害处(只限于了解,不用专业化,当然能专业化就更好了)。

既然了解.net了,那学java就很轻松了。

首先是基本语法,跟C#差不多的。

然后是jsp,el,servlet,简称java-web。最好了解一下jsp规范,servlet规范,javaBean规范,不过最重要是要作出hellword,能够跑起来。

最后是框架,struts1,struts2,spring,hibernate,学习曲线,struts1->hibernate->spring->struts2。

js:这个跟java无关,但做web开发,肯定要用。基本语法,css,然后掌握一门框架,目前jquery比较主流。