打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
如何学好JAVA,怎么学JAVA
Java来自于Sun公司的一个叫Green的项目,其原先的目的是为家用消费电子产品开发一个分布式代码系统,这样我们可以把E-mail发给电冰箱、电视机等家用电器,对它们进行控制,和它们进行信息交流。开始,准备采用C++,但C++太复杂,安全性差,最后基于C++开发一种新的语言Oak(Java的前身),Oak是一种用于网络的精巧而安全的语言,Sun公司曾依此投标一个交互式电视项目,但结果是被SGI打败。可怜的Oak几乎无家可归,恰巧这时MarkArdreesen开发的Mosaic和Netscape启发了Oak项目组成员,他们用Java编制了HotJava浏览器,得到了Sun公司首席执行官ScottMcNealy的支持,触发了Java进军Internet。 

Java的特色 

是一种由美国SUN微系统公司(Sun Microsystems, Inc.)所研究而成的语言 
是一种为 Internet发展的计算机语言 
是一种使网页(Web Page)产生生动活泼画面的语言 
是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言 
是一种简化的C++语言,是一种安全的语言,具有阻绝计算机病毒传输的功能 
是一种将安全性(Security)列为第一优先考虑的语言 
是一种「写一次,即可在任何机器上执行(Write Once Run Anywhere)」的语言,是有史以     来,第一套允许使用者将应用程序(Applications)通过Internet从远端的服务器(Remote Server)传 输到本地端的机器上(LocalMachine)并执行的语言 
是一种应用程序提供者不需要知道使用者的计算机硬件(如:Sun, Intel, 或MAC等)与软件(如:SW- UNIX, MAC O/S, Windows, 或NT等)环境的语言(Kestenbaum, 1995)。 

这样才能学好java呢? 

不要看到别人的回复第一句话就说:给个代码吧!你应该想想为什么。当你自己想出来再参考别人的提示,你就知道自己和别人思路的差异。 
初学者请不要看太多太多的书那会误人子弟的,先找本系统的学,很多人用了很久都是只对部分功能熟悉而已,不系统还是不够的。 
看帮助,不要因为很难而自己是初学者所以就不看;帮助永远是最好的参考手册,虽然帮助的文字有时候很难看懂,总觉得不够直观。 
不要被对象、属性、方法等词汇所迷惑;最根本的是先了解最基础知识 
不要放过任何一个看上去很简单的小问题--他们往往并不那么简单,或者可以引伸出很多知识点;不会举一反三你就永远学不会。 
知道一点东西,并不能说明你会写脚本,脚本是需要经验积累的 
学脚本并不难,JSP、ASP、PHP等等也不过如此--难的是长期坚持实践和不遗余力的博览群书 
把时髦的技术挂在嘴边,还不如把过时的技术记在心里; 
在任何时刻都不要认为自己手中的书已经足够了 
请把书上的例子亲手到电脑上实践,即使配套光盘中有源文件 
学习是为了用的,是为了让你的程序产生价值,把握住这个原则会比较轻松点。 
JAVA的精华就在面向对象思想,好比指针是C语言的精华一样,多花点心思就能掌握

——————————————————————————————————————————————————————

我带过不少 JAVA,C++班的课,来学习的同学很多都是初学者,一部分是急着找工作的, 一部分是很感兴趣的。他们都想在短短一两个星期内掌握,这是不切实际的。而且这样做很 容易让自己心浮气燥,难以静下心来思考。 JAVA 是比较热门,但我们自己不能头脑发热。 

        我觉得所有初学者要学好 JAVA 或 C 或 UNIX 等任何一门计算机技术,一定要做到: 动手,动脑,动嘴,静心。 其中动手是最为重要的了。很多人学计算机技术就是看书、听课,当时是明白了,过后 马上就忘记。如果不愿意敲键盘,就不如不学。即使有时候所敲的代码你不明白,可以先运 行,看看结果,增加感性认识,然后上升到理性的认识。特别是在大家做考题的时候,很多 东西, 概念, 你只要随便敲一个程序做做实验就能很深刻的理解, 但很多人都是不愿意动手, 这样的学习效率能高吗。 动脑,动嘴, 就是要多想问题,多思考,有不懂的问题就大声说出来。很多人一是不 动脑筋想问题,也就提不出问题。还有一些人怕自己提出的问题傻,怕人笑话。其实 IT 行 业技术面很广,工作了 5、6 年的人说出一些傻话来也是正常的。 然后静心很重要。 

        现在社会很浮躁,IT 行业更浮躁,这种心态是学不好东西的。我带 过一群 C++的学生,给他们将 C++基础,指针等,他们说太基础了,不愿学。要我讲高级 点的,我就教他们 WIN32,他们说就教 MFC 吧,OK 我就带他们做一个小 MFC 程序,结 果有些人连 C++大小写要区分都不知道。学 JAVA 的学生很多让我讲 EJB,说热门。我说 你学会了基本的东西,EJB 之类东西是很容易的,否则就是本末倒置。当然有些人情况特 殊,急着工作,那去学 JSP,SERVLET,JDBC 很容易,也好找工作,但基础最后还是要 补的。很多人 JAVA 做了几年了,连多态,线程都没搞明白。 JAVA 中,有些概念不好理解怎么办,有学生说我就是不理解线程是怎么回事。我觉得 理解是需要时间的, 一下不能理解, 多看看,甚至多背几遍就理解了。读书千遍,其义自见, 现在也管用。而且我觉得初学时候要不求甚解,多做,多敲代码。等你做的足够多的时候, 见多识广的时候,概念,理论的东西就很容易理解了。 

         JAVA 的精华就在面向对象思想, 好比指针是 C 语言的精华一样, 多花点心思就能掌握。 我可以结合自己的经验大致给你说一说,希望对你有所帮助,少走些弯路。 学习 Java 其实应该上升到如 何学习程序设计这种境界,其实学习程序设计又是接受一种编 程思想。每一种语言的程序设计思想大同小 异,只是一些由语言特性的而带来的细微差别 ,比如 Java 中的 Interface,你几乎在以前的学习中没有碰 到过。 

        以下我仔细给你说几点 : 
               1。我们必须明确一个大方向,也就是说现在面向对象的编程范畴。尽管 人工智能曾经有 所浪潮(看看 Borland 为什么有 Turbo Prolog),但未来 5-10 年工业界广泛承认并接受 的 将是面向对象式的编程。  
               2。工业界目前最流行的面向对象编程语言就是  C++ 和  Java 。所以基本上锁 定这两个方向就 可以了。而且完全可以同时掌握。  
               3。掌握 Java 的精华特性而且一定要知道为什么。比 如,Interface 和 multi-thread。用 interface 是更好的多继承的模型,而多线程则是设计到语言一级的重要 特性。要完全理 解 interface 是为什么,用多线程又有几种常用的 编程 模型。 
               4。理解了语言的特性是为 什么了之后,就可以试着上升到设计这个层次,毕竟学习语言 是要用的。目前比较好的开发模式是采用自 定向下的面向对象的设计,加上 MVC 的模式( 你可以看一下我介绍的关于 MVC 的内容)。首先要找出 最顶层的对象(这往往是最难的) ,然后一层一层往下递归 ,记住每次应符合 7+/-2 的原则,因为我们 人的短记忆就是这样。一般有图形用户界面的 应从界面开始设计。  
               5。有了基本设计模型后,可以学一些 设计模式(Design Pattern)。这是目前证明很有效 的。比如体系结构模式(Layering 分层,Pipe/Filter 管 道或过滤器),设计模式(有很 多,比如对象池 Object Pool、缓冲池 Cache 等),编程模式(比如 Copy-on-Write)。懂了这些模式之后,就会对 系统的整体结构有很好的把握,而学术上也有倾向一个系 统完全可以由各种模式组合而成 。前面提到的 MT 实际上就有好几种模式,掌握后就不用自己花很多时间 去试了。另外一个 很重要的领域就是并行 和分布式计算领域,大概有 20 种左右。  
               6。接下来就不能纸 上谈兵了,最好的方法其实是实践。一般教科书上的例子并不能算是 实践,只能算是让你掌握语言特性用 的。而提倡做实际的 Project 也不是太好,因为你还 没有熟练的能力去综合各种技术,这样只能是你自己 越来越迷糊。我认为比较好的方法是 找一些比较经典的例子, 每个例子比较集中一种编程思想而设计的, 比如在我的实践当中,我曾经学习过一个很经 典的例子就是用 Java 实现的 HotDraw(源自 SmallTalk), 你可以用 rolemodel 或 hotdraw 在 搜索引擎上找一下,我记不大清楚了。好象 rolemodel.com 是个网站, 上面有原代码和一些基本设计的文档。 
        从 HotDraw 上我学到了什么是 Framework,以及如何用 rolemodel 的方式来构造,这样我就可以应用到其他 的地方。顺便 说一句,这个例子你绝对不会觉得小,只会觉得大,并且他还是真正的商用的 Framework 。  
               7。结合前面学到的设计模式你就可以很好的理解这些经典的例子。并且自己可以用他来 实现一些简单的 系统。如果可以对他进行进一步的修改,找出你觉得可以提高性能的地方 ,加上自己的设计,那就更上一 个层次了,也就会真正地感到有所收获。  
               8。好象以上谈的跟 Java 没什么关系,其实我们早就应该从单 纯的学习语言到真正的学习 好编程的领域。学习技术是没有止境的,你学习第一种语言可能要半年时间, 以后每种语 言都不应该超过两个月,否则你会觉得学习语言是包袱,是痛苦。  
               9。学习是为了用的,是为 了让你的程序产生价值,把握住这个原则会比较轻松点。 

                没有第 10 点了,因为没有东西是十全十美的。
================================华丽分割================================ 
               1.不要看到别人的回复第一句话就说: 给个代码吧!你应该想想为什么。 当你自己想出来再参考别人的提示, 你就知道自己和别人思路的差异。  
               2.初学者请不要看太多太多的书那会误人子弟的,先找本系统的学,很多人用了很久都是只对部分功 能熟悉而已,不系统还是不够的。  
               3.看帮助,不要因为很难而自己是初学者所以就不看;帮助永远是最好的参考手册, 虽然帮助的文字有时 候很难看懂,总觉得不够直观。  
               4.不要被对象、属性、方法等词汇所迷惑;最根本的是先了解最基础知识。  
               5.不要放过任何一个看上去很简单的小问题--他们往往并不那么简单,或者可以引伸出很多知识点;不 会举一反三你就永远学不会。  
               6.知道一点东西,并不能说明你会写脚本,脚本是需要经验积累的。  
               7.学脚本并不难,JSP、ASP、PHP 等等也不过如此--难的是长期坚持实践和不遗余力的博览群书;  
               8.看再多的书是学不全脚本的,要多实践  
               9.把时髦的技术挂在嘴边,还不如把过时的技术记在心里; 
               10.学习脚本最好的方法之一就是多练习;  
               11.在任何时刻都不要认为自己手中的书已经足够了;  
               12.看得懂的书,请仔细看;看不懂的书,请硬着头皮看;  
               13.别指望看第一遍书就能记住和掌握什么——请看第二遍、第三遍;  
               14.请把书上的例子亲手到电脑上实践,即使配套光盘中有源文件;  
               15.把在书中看到的有意义的例子扩充;并将其切实的运用到自己的工作中;  
               16.不要漏掉书中任何一个练习——请全部做完并记录下思路;

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
推荐几本适合初学者的Java书籍
对于初学者来说,JAVA和python哪个更加容易入门?
c语言最重要的编程思想
10本Java程序员必读经典
改变你对C/C++的认识
人生苦短,我用Python
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服