正在学习Java SE,为什么感觉学习Java SE就是在学习一些API(目前只在少部分重要的地方学习源码)。例如Java的IO流中,就是在学习他们的各种结构关系(继承关系等),它们的构造方法,成员方法等,那要是脱离了这门语言,这些API不是相当于作废?你们学习IO流的时候是怎么学的?不知这种想法是否对?(也许各类面向对象编程语言的三大特征都是相似的:继承,封装,多态)
伊谢尔伦2017-04-18 10:55:40
可以继续学习java的多线程,反射,类加载器,注解等,这些东西才是用来构建框架结构的工具。
(学习IO流,拿来就用。。)
实在觉得无聊,可以看看 openJDK,研究一下虚拟机 JNI 垃圾回收
迷茫2017-04-18 10:55:40
你对io流感兴趣,不如自己看看linux下的系统调用。selector,epoll之类。
语言带给你的仅仅是一种实际的方案。
如果你想学更加接近计算机的语言,汇编咯。由于对象封装的存在,让java看起来非常的高内聚,但是,我觉得,至少看起源码来,你要掌握的东西远远更多。举个例子,你看到一个方法调用,但是这个方法是在某个对象内的,对象内的状态对于方法的影响可以说是非常大的。但是这点在c中就不会那么明显。至少过程化的东西,可以更加易读一点。
java合适业务,如果你喜欢纯技术一点的话,c,go,甚至脚本shell,lua,python都可以。
ringa_lee2017-04-18 10:55:40
IO流如果觉得枯燥,就先不太看太多,大概看看怎么用就行,我当初就是这么做的
API是可以翻的,不要死记硬背
编程语言只是工具,只有结合实际需求才可以真正理解他
至于多线程,反射,类加载器,注解这些最好是在有一定代码量和使用之后,进行刻意的深入学习,才是最高效的
其实学习向来比较枯燥,在非舒适区学到的东西才是你和别人的不同点,当然前期最重要的还是用起来~