徐老师好,我最早学的一门语言就是java,语法学了3遍,然后又学了围绕他展开的数据库 几个框架 jsp,android 等 可是如果别人问你是否精通java,我又感觉自己只能堪称了解,感觉只是学到了表面,只能做一些简单的东西,请问如何掌握甚至精通它呢
语法只是基础,怎么用才是关键,只能在日常工作中解决问题来提高。
从使用三方库,到自己学习设计,解决特定的问题。
java方向很多,关注点不一样。比如j2ee,java服务器,大数据等等。如果针对java语言本身而言如何精通呢?我从技术角度来说说。1. 知道常用的api,并能熟练的掌握,这个是第一步。2. 能够模拟常见的数据结构,比如LinkedList,ArrayList, TreeMap,Stack,BlockingQueue,这递增不仅可以理解数据结构还可以帮助学习jdk是如何实现的。参阅双向链表模拟3.掌握java经典的IO结构,包括BIO,NIO,AIO要深入的晓得JDK大体代码结构。JavaNIO,AIO编程4.理解多线程,以及如何控制线程安全,包括同步器和信号量。java同步器解析5.理解JVM的内存布局,以及垃圾回收算法,能很好的使用jdk自带的调优工具。理解volatile内存语义下一步就是研究OpenJDK,这需要一些c的知识,但这个时候恰恰可以很好的理解AQS等核心内容,到这个时候,语言已经不是问题。
作者:watchmen
链接:https://www.zhihu.com/question/19796490/answer/31803853
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。