A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 唐林渊 黑马帝   /  2011-12-21 07:24  /  3144 人查看  /  8 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 jacktang 于 2011-12-22 05:40 编辑

一个好的学习方法胜过反复的学习,在这里请求大家能推荐一下好的学习方法,

对象;没有基础的自学者,

我们这里有好多人在自学,为什么有的人自学的效果比较好,有的不好,所以请教大家的自学方法,我现在在学毕老师的java基础,学习方法是,一天的课程分三天看完,因为在上班,所以这样做。但效果并不好,学完后忘记了,然后又回来重学。本人很苦恼,如果有老师或同学能给具体的学习方法比人万分感激。
         目前的资料有视频和代码 PPT等。希望大家帮助我们这些追求梦想的人.

8 个回复

倒序浏览
本人学生,现在决定要去黑马后,一直在为黑马努力,实训已经放弃,现在一天的全部时间用来看视频(睡觉6小时)。

一天要看2个视频,看视频的时候手边有笔和纸(前段时间只看和只在电脑上面写代码效果不好,理解的不行),感觉是不会的就记一下。

我是偶尔会翻阅(可以用KMplayer,重看时感觉回的可以用100%-----300%的速度跳过去)前面学过的视频的,有时候感觉第一遍看过第二遍带着问题再看就好像第一遍没看过一样。

还有就是手边有本java类的书,最好是概念,举例比较多的大部头,纸张要相对好点,摸着有感觉。
就这么多吧。楼主参考下吧
回复 使用道具 举报
一边看视频一边根据毕老师的视频敲代码。然后总结每一个小程序或者每个知识点。用笔记记下来,用来发表个人日志。重要的技术要细心看,比如 多线程,网络编程,I/O设计,以及高新技术。特别是最后的两个项目。一定要弄懂,不要求自己能敲出来,一定要知道它都用到哪些知识点,应该熟悉那块知识就ok了。如果你还有时间你可以看一下 jsp  以及javaEE  比如 流行的框架ssh2  以及ssi  框架。
回复 使用道具 举报
还是多进行练习,敲代码!敲多了,思想,手感都出来了!
回复 使用道具 举报
在看視頻之前最好有一個詳細的計劃,比如我要用多長時間把畢老師的整個視頻看完,用多長時間看完一天的課程,這些計劃最好做成表格,以便時時翻看。
看視頻時最好一邊敲代碼,認真聽,把老師講的重點註釋下來,以備以後翻閱。同時,打開cmd,準備隨時檢查自己的代碼是否有問題。有不懂的地方先記下來,放到論壇里,等別人的解釋。這樣既加快了學習的速度,也提高了效率。
回复 使用道具 举报
刘旭 黑马帝 2011-12-21 10:20:41
地板
本帖最后由 刘旭 于 2011-12-21 10:24 编辑

个人觉得最重要的是,把视频看懂,笔记记详细一点。笔记记详细一点可以避免党知识点忘记的时候再重头看视频,浪费时间,而且还便于复习,便于很久以后查阅参考。当然,敲代码也非常重要,特别是初学者。有的初学者很聪明,老师讲课一听就懂,思路也很清晰,自己用笔在稿纸上也能写出来。但是,当在电脑上敲出来运行时,那错误,惨不忍睹。究其原因,练习敲代码太少,低级错误太多。
回复 使用道具 举报
余松霖 黑马帝 2011-12-21 12:32:16
7#
个人觉得学习没有什么一成不变的捷径,只有方式方法.这个方式方法因人而异.每个人学习能力和接受能力都不同.有人听课一遍直接能把代码写出来,有人则不行.
我觉得最关键的是我们根据自己的情况找出一个适合自己的有效学习方法.
对于我们初学者来说,多敲代码吧.学编程虽然学的是思想.但我们应该把基础打好.熟练之后思想自然就出来了.
回复 使用道具 举报
多写代码!!还有就是必须理解什么意思!!那样不怎么爱忘!就算忘了,看一个程序就能记起来!!
回复 使用道具 举报
王青山 黑马帝 2011-12-21 14:11:34
9#
转载某同学的自学方法:


java 作为一门编程语言,最好的学习方法就是写代码。当你学习一个类以后,你就可以自己写个简单的例子程序来运行一下,看看有什么结果,然后再多调用几个类的方法,看看运行结果,这样非常直观的把类给学会了,而且记忆非常深刻。然后不应该满足把代码调通,你应该想想看如果我不这样写,换个方式,再试试行不行。记得哪个高人说过学习编程就是个破坏的过程,把书上的例子,自己学习documentation编写的例子在运行通过以后,不断的尝试着用不同的方法实现,不断的尝试破坏代码的结构,看看它会有什么结果。通过这样的方式,你会很彻底的很精通的掌握java。

举个例子,我们都编过hello world

public class helloworld
{

public static void main(string[] args)
{

system.out.println(" hello world" )  

}

}

很多初学者不是很理解为什么main方法一定要这样来定义public static void main(string[] args),能不能不这样写?包括我刚学习java的时候也有这样的疑问。想知道答案吗?很简单,你把main改个名字运行一下,看看报什么错误,然后根据出错信息进行分析;把main的public取掉,在试试看,报什么错误;static去掉还能不能运行;不知道main方法是否一定要传一个 string[]数组的,把string[]改掉,改成int[],或者string试试看;不知道是否必须写args参数名称的,也可以把args改成别的名字,看看运行结果如何。

我当初学习java的时候就是这样做的,把hello world程序反复改了七八次,不断运行,分析运行结果,最后就彻底明白为什么了main方法是这样定义的了。

此外,我对于staic,public,private,exception,try{ }catch {}finally{}等等等等一开始都不是很懂,都是把参考书上面的例子运行成功,然后就开始破坏它,不断的根据自己心里面的疑问来重新改写程序,看看能不能运行,运行出来是个什么样子,是否可以得到预期的结果。这样虽然比较费时间,不过一个例子程序这样反复破坏几次之后。我就对这个相关的知识彻底学通了。有时候甚至故意写一些错误的代码来运行,看看能否得到预期的运行错误。这样对于编程的掌握是及其深刻的。

其中特别值得一提的是jdk有一个非常棒的调试功能,-verbose

java ?cverbose

javac ?cverbose 以及其它很多jdk工具都有这个选项

-verbose 可以显示在命令执行的过程中,jvm都依次加载哪里class,通过这些宝贵的调试信息,可以帮助我们分析出jvm在执行的过程中都干了些什么。

另外,自己在学习过程中,写的很多的这种破坏例程,应该有意识的分门别类的保存下来,在工作中积累的典型例程也应该定期整理,日积月累,自己就有了一个代码库了。遇到类似的问题,到代码库里面 copy &  paste ,search &  replace,就好了,极大提高了开发速度。最理想的情况是把一些通用的例程自己再抽象一层,形成一个通用的类库,封装好。那么可复用性就更强了。

所以我觉得其实不是特别需要例程的,自己写的破坏例程就是最好的例子,如果你实在对自己写的代码不放心的话,我强烈推荐你看看jdk基础类库的java源代码。在jdk安装目录下面会有一个src.zip,解开来就可以完整的看到整个jdk基础类库,也就是rt.jar的java源代码,你可以参考一下 sun是怎么写java程序的,规范是什么样子的。我自己在学习java的类库的时候,当有些地方理解的不是很清楚的时候,或者想更加清晰的理解运作的细节的时候,往往会打开相应的类的源代码,通过看源代码,所有的问题都会一扫而空。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马