不知不觉在北大青鸟深圳嘉华学校学习已经有一个多月了,从安装JDK的那一瞬间,我就知道我将和Java结下不解之缘,就像谈恋爱一样,始于心动,终于白首。从“helloWorld”开始,一路走来确实不容易。
第一周学习了Java数据类型、运算符、分支、循环结构,方法。都是比较基础的部分,内容有些多,还好我之前有看过书能跟上进度。循环结构这部分的知识比较考验逻辑性,特别是多重嵌套循环,比如打印九九乘法口诀表,正三角形等,之前写日历查询时写了70多行代码,也就是用了嵌套for循环以及if分支,当时觉得代码写太多了。学习了方法之后,发现写起代码来变得灵活了,这里调用一个方法,那里调用一个方法,非常方便。
第一周学习的位运算和位移运算都比较重要,面试题里就有一个如何快速计算2^3,可能大家第一反应是2*2*2=8,其实最快的方法就是直接用位移运算符,2<<2,因为位移的运算效率比前面要高的多。
第二、三周学习了数组、面向对象、内部类、System、Math、String等。面向对象是一种思想,万事万物皆对象,这是Java学习的一个核心哲学思想,听说我们老师花了五年时间才领悟,所以我想我还有很长时间需要去摸索。对象的三大特性封装、继承、多态以及内部类的知识以后会经常用到,在学习匿名内部类的时候,会学到有关lambda的知识,用五个字来总结就是行为参数化,因为它的简便性,用过lambda的人都说好。
在学习这一部分的时候要学会使用面向对象的思想去思考问题,当要写一个程序时,可以先试着在草稿纸上面写个大概的流程,要学会使用这种打草稿画流程图的方法,正所谓工欲利其事,必先利其器。
第四周学习了集合、异常、IO。集合里面涉及的知识点比较多,但是整理过后会发现集合之间都会有着一些联系和区别,其中ArrayList、linkedList、HashMap这几个是需要重点掌握的,可以把这些集合之间的区别以及共性做一个整理,这样会对理解集合有帮助。异常时我们会经常遇到学会抛异常和抓异常,使用finally通知GC来回收那些不再使用可以回收的垃圾。IO是很重要的知识点,可我学得不是很好,主要是被那一大段的单词给击败了,不过IO的本质也还是把内容写入对应的磁盘,然后从磁盘里面的内容读取,这个过程中的流大都是装饰基础流的,并没有想象中那么复杂。
第五周学习了多线程、线程池、并发、Socket,NIO。说实话,这个星期的知识都很难,并不好掌握,如果是能力强学的好的话,可以做一些类似客户端与服务器之间的文件传输练习,先做单线程然后再实现多线程。如果觉得这一部分学的不太好,就重点学好基础部分,掌握了基础,那些难一点的知识才能更好的掌握。
想到文章篇幅,就不每一周逐一分享了。想学Java也细分多个专业,在北大青鸟深圳嘉华学校有Java全栈工程师、互联网架构师等,专业不一样,深度和学习时间也不一样。想了解更多的话,可以直接在线咨询哟~