如何才能系统有效的学习java
Java语言的学习开始,很多同学不知道从哪入手?如果你也想知道如何从零开始学Java?那么请看下文,以下是学习啦小编分享给大家的有效的学习java的方法的资料,希望可以帮到你!
有效的学习java的方法
1明确面向对象的范畴
我们必须明确一个大方向,也就是说现在面向对象的编程范畴。尽管人工智能曾经有所浪潮(看看Borland为什么有Turbo Prolog),但未来5-10年工业界广泛承认并接受的将是面向对象式的编程。
工业界目前最流行的面向对象编程语言就是C++和Java。所以基本上锁定这两个方向就可以了。而且完全可以同时掌握。
2掌握Java的精华特性
掌握Java的精华特性的同时,一定要知道为什么。比如,Interface和multi-thread。用interface是更好的多继承的模型,而多线程则是设计到语言一级的重要特性。要完全理解interface是为什么,用多线程又有几种常用的编程模型。
3开始进行设计
理解了语言的特性是为什么了之后,就可以试着上升到设计这个层次,毕竟学习语言是要用的。目前比较好的开发模式是采用自定向下的面向对象的设计,加上MVC的模式(你可以看一下我介绍的关于MVC的内容)。首先要找出最顶层的对象(这往往是最难的),然后一层一层往下递归,记住每次应符合7+/-2的原则,因为我们人的短记忆就是这样。一般有图形用户界面的应从界面开始设计。
4学习设计模式
有了基本设计模型后,可以学一些设计模式(Design Pattern)。这是目前证明很有效的。比如体系结构模式(Layering分层,Pipe/Filter管道或过滤器),设计模式(有很多,比如对象池Object Pool、缓冲池Cache等),编程模式(比如Copy-on-Write)。
懂了这些模式之后,就会对系统的整体结构有很好的把握,而学术上也有倾向一个系统完全可以由各种模式组合而成。前面提到的MT实际上就有好几种模式,掌握后就不用自己花很多时间去试了。另外一个很重要的领域就是并行和分布式计算领域,大概有20种左右。
5进行编程实践
接下来就不能纸上谈兵了,最好的方法其实是实践。一般教科书上的例子并不能算是实践,只能算是让你掌握语言特性用的。而提倡做实际的Project也不是太好,因为你还没有熟练的能力去综合各种技术,这样只能是你自己越来越迷糊。
我认为比较好的方法是找一些比较经典的例子,每个例子比较集中一种编程思想而设计的,比如在我的实践当中,我曾经学习过一个很经典的例子就是用Java实现的HotDraw(源自SmallTalk),你可以用rolemodel或hotdraw在搜索引擎上找一下,我记不大清楚了。好象是个网站,上面有原代码和一些基本设计的文档。
另一个来源可以到是个不错的文档基地。从HotDraw上我学到了什么是Framework,以及如何用rolemodel的方式来构造,这样我就可以应用到其他的地方。顺便说一句,这个例子你绝对不会觉得小,只会觉得大,并且他还是真正的商用的Framework。
6学习修改经典例子
结合前面学到的设计模式你就可以很好的理解这些经典的例子。并且自己可以用他来实现一些简单的系统。如果可以对他进行进一步的修改,找出你觉得可以提高性能的地方,加上自己的设计,那就更上一个层次了,也就会真正地感到有所收获。
好象以上谈的跟Java没什么关系,其实我们早就应该从单纯的学习语言到真正的学习好编程的领域。学习技术是没有止境的,你学习第一种语言可能要半年时间,以后每种语言都不应该超过两个月,否则你会觉得学习语言是包袱,是痛苦。
7学以致用
学习是为了用的,是为了让你的程序产生价值,把握住这个原则会比较轻松点。
有效的学习java的建议
1. 静静的想想
学习Java之前,静下心来想想,这关系到你以后该走的路:
1)你对学习Java是否有兴趣?
2)你的兴趣点能否支撑你持续去学习这门语言?
3)你对Java深入了解过吗?这门语言能够帮助你达到怎样一个目标?
4)Java的前景,生命力,就业率,以及市场的需求是否符合自己的发展?
这些问题必须要仔细思考一下,首先确信自己对Java感兴趣、要有吃苦耐劳的精神,那你才可能学好Java!成功的秘诀就是专注与坚持,如果具备这两点条件,就请继续往下看……
2. 开始发奋(准备)
请不要把你的学习Java之路和其它计算机技术分开看待,技术的联系往往是千丝万缕的,你应该掌握一些学习Java所涉及的基础知识,对于 “CLASSPATH要怎么设置啊”、“跪求JDK下载地址”等等问题,这些问题可以直接从搜索引擎中获取到答案,互联网+时代,云时代,知识与资源共享,一些普遍的问题都可以得到解决。
1)买本Java学习用书。
JDK 6正式版刚刚推出,市面上你暂时买不到JDK 6的书籍,但我仍推荐你买一本适合入门的、较新JDK版本的Java书籍,那么,你现在选择一本讲述JDK 5的入门书籍还是有条件的。我可以推荐一些入门书,但是我不打算这么做,因为合我口味的,不一定适合你。但无论如何,《Thing In Java》绝对不应该作为你入门Java的第一本书籍!
记住,网络上学习Java的资源很多,但不够系统,拥有一本Java入门书籍,是你系统学习Java的基础,入门的一个很好的条件。
2)准备Java学习的电脑环境。
准备你的学习环境,很简单,安装JDK 6,然后用类似UltraEdit、EditPlus的文本编辑器配置你的学习环境,Internet上有很多关于如何配置的文章。初学Java,不建议用IDE工具,通过一行行的敲代码,你会碰到很多问题,只有这样,你才能学会怎样解决问题,并加深自己对Java的理解。
准备好后,开始进入激动人心的Java学习里程吧!
3. Java基础学习
学习Java的过程处处有精彩,处处有惊喜,认准了Java,你就坚持!克服心魔,恒心最终会给你回报的。
Java的体系分为Java SE、Java EE和Java ME(JDK 5.0以前分别叫J2SE、J2EE和J2ME),Java的敲门砖就是Java SE了,也就是你要入门学习的内容,不论你日后是选择哪个体系领域作为发展方向,你都得从Java SE起步。
学习Java SE,打好Java基础;如果想学Java EE,对于AWT、Swing是否要学习呢,我个人是觉得还是要知道里面的真谛,特别是其事件处理模式,我强烈建议初学者一定要弄清楚,其他具体的开发就不一定要全面掌握了,毕竟AWT、Swing方面的内容足够用几本大部头的书才能描述详尽;当然,如果你的工作就是做 AWT、Swing开发,那就另当别论了。
4. Java EE学习
学习了Java SE,还只是完成“万里长征”的第一步。
接下来选择学习Java EE或是Java ME(或者你还想不断深入学习Java SE,只要你喜欢,你可以一直深入下去,就像前面所说的,我不会讲到Java ME的学习);估计选择Java EE方面的学习者会多一些,Java EE所涉及技术非常多,考虑到初学者的接受程度,我会尽量从最常用的角度来介绍。
学习Java EE,在开发环境上不建议再用文本编辑器,我感觉NetBeans 5.5(目前最高正式版本)很适合初学者,我个人也很喜欢NetBeans,如果你喜欢用别的IDE如Eclipse,都没问题,看自己喜欢吧。
4.1 学习JSP/Servlet
Java EE最高版本目前是5.0版本。
在Java EE中,首先要学习JSP/Servlet(结合Tomcat、MySQL)技术,建议JSP1.2/2.X的知识都要掌握,毕竟现在很多的在用系统都还是基于JSP1.2,学习JSP,还必须掌握一些外延技术,如:你还得掌握HTML基础知识,最好再掌握些JavaScript(目前正火的AJAX技术之一)、CSS的技术,而了解XML是必不可少的(至少描述性配置信息是通过XML来描述的)。在学习JSP/Servlet过程中,应该结合学习 JDBC、数据库开发技术,毕竟绝大多数Java Web项目都是和数据库紧密结合的。
4.2 学习数据库开发
重点说一下数据库开发技术,数据库技术是做业务系统必备技能,Java Web开发人员最低程度都应该掌握SQL语句的使用!数据库技术大体可分为DBA技术和数据库开发技术,对于开发而言,应侧重数据库开发技术,而数据库基本操作,也是要掌握的。常用数据库有DB2、Oracle、SQL Server、MySQL等,你可以结合实际需要,选择一种数据库,并花大力气掌握其开发技术。
学习数据库开发技术和学习Java EE,是相对独立的,你可以在学习JSP/Servlet的同时,学习数据库开发技术,或者先学数据库开发技术,之后再学习JSP/Servlet之类的。
4.3 学习Java EE其它开发
再往后一点,学习一些EJB的知识,目前EJB最新版本是3.0,其和前面的2.X版本相比,有很大的不同,考虑到目前EJB 2.X还有很大的应用市场,建议结合学习EJB 2.X/3.0。在学习EJB过程中,应同时掌握一种企业级应用服务器的使用(如 WebSphere、Weblogic、Sun Applcation Server或JBOSS等,目前Sun Applcation Server 9.X和JBOSS都可支持EJB 3.0)。
有效的学习java的技巧
理解Java思想
Java是一门面向对象编程语言。向对象编程是Java最核心的思想,这也是区分和C等其他编程语言的一个显著特征。掌握面一门语言,首先得掌握它的思想,思想决定高度。这就和我们学习语文和英语一样,汉语学拼音,英语学音标。抓住了核心,学习起来就事半功倍。
弄清基本概念
作为一门语言,Java肯定有着丰富而又简单的概念。弄清这些基本概念也是必不可少的,死记硬背肯定是不行的,重在理解,理解它们之间的区别与联系,分别有那些应用。有些同学打开电脑就照着书本敲代码,根本没有想过这些代码中用到了哪些知识点,更谈不上理解了,这样是没有任何效果的。
多练习
只理解了Java的基本概念是远远不止的,还要知道怎么去使用。刚开始,你可能会觉得Java中那么多东西怎么也记不住,就连写一个小小的入门级程序都要涉及到好多东西。但是,当你亲手在键盘上敲了几遍之后,你就会觉得之前的那些问题都不是问题了。
学会帮助看文档与源代码
Java是一门开放源代码的编程语言。利用网络可以下载官方的帮助文档,当你不知道一个东西怎么用时,你可以打开帮助文档,你的问题一下就解决了。如果还不能解决的话,打开搜索引擎,输入你的问题,你一定会找到答案的。如果你想弄懂Java底层的原理的话,可以去网上下载对应的源代码。看了源代码之后,你会发现Java的世界是多么的奇妙,也会提高你Java编程的水平。
猜你喜欢: