您的当前位置:主页 > 黄大仙综合资料大全 >

Java学习计划给自己一个学习线路

更新时间:2019-07-16

  动力节点Java培训最新上线Java实验班,等你来测试自己适不适合学习Java编程哦!

  Java学习计划,给自己一个学习线路。语言是学习成本比较低的,Java作为一种高级语言,其相关语法相对简单,各种类库、框架封装的都相对好,而且相关生态也比较好(百度、google可以快速检索,github也有很多相当优秀的资源),Java类库的使用与C++的STL有很多类似的地方(STL的类库是基于C的template的规则衍生出来的,而Java的类库就基础实现来说我理解也是template,通过将基础功能模版化封装好,这其中涉及到范型等语法)。而Java类较C++而言,C++的虚函数被java中的接口取代;较C而言,C中的结构体也就是Java中的类;所以将Java与大家最常使用和学习的C/C++做类比,会发现Java的语法有很多其他语言的影子,尤其C/C++。

  上面建绍了小编对Java的理解,现对其基础语法学习推荐一本书:《Java编程思想》,Java编程神书,适合打基础使用,但是相对较贵,可以搜索电子书进行阅读。java基础语法学习外,要懂的主要几个点:八个基础类型与其对应的类的装包和拆包(主要是对应类的底层数据结构,重点);collection类、map类(collection类要会画它的类图,map类要懂hashmap的底层数据结构,curruenthashmap的底层数据结构,Java1.8之前和之后的不同等等),并且要理解哪几种是线程安全的类(举例:curruenthashmap2018香港开奖现场直播现vector、hashtable);最基础的类object的三个方法的具体实现,add、hashcode、equal。

  已经有了相对较好的java基础后,需要学习一些java使用较高级的东西,大体有两方面,一个是并发,一个是JVM(java虚拟机),分别推荐两本书吧:《Java并发编程的艺术》、《深入理解Java虚拟机》,前者较好的讲解了java中并发编程的实现,内容通俗易懂,主要理解volitile和sychornizer,涉及到底层封装,主要是通过CAS和AQS实现的,而原子类、JUL下的工具类等实现也是上述两种方法实现的,而并发最重要的技术体现就是线程池技术(此处是重点,源码)和锁(主要理解对象的头部markhard部分,在此基础上学习下重入锁、读写锁,而悲观锁、乐观锁、轻量锁、重量锁等概括要通过相应的关键字来理解);后者较深,不建议Java入门学习,只要对JVM底层结构有一定了解,对内存模型有概念,对GC的实现理解其算法和流程就好。

  Java是面向对象编程,面向对象编程的一个特点就是有很多设计模式,比如单例模式(懒汉和饿汉)、工厂模式、策略模式、迭代器模式、服务端和客户端模式等等,这些设计模式可以看一些书学理解一下精髓,推荐《设计模式解析》,设计模式只要先懂精髓就好,这个跟jvm比较相识,在实际工作中理解效果更好,)世界上本没有路走的人多了也就成了路(,一个道理的。

  经典的SSM(spring、springMVC、mybatis),要对其使用、结构、源码实现有一定理解,其中spring的IOC和AOP,springMVC和服务器/bean层的关系及实现,mybatis的源码实现(mybatis源码流程相对简单,便于学习java代码)。现在用的最多的是springboot,便于快速构建,但是缺点是缺少对具体实现的感知,需要有SSM或SSH的组合理解(不推荐SSH呀,太老了)。

  数据库技术懂mysql就好,会用最基本的select、delete、update、query(orderby,groupby)就好,最好会用index(索引,公司用的比较多的内容,基于红黑树),自己可以试着建表,多线程访问增删改查,看看效果。数据库的四大特性及引入的三大问题,及解决问题的四大隔离事务都要懂。

  声明:该文观点仅代表作者本人,搜狐号系信息发布平台,搜狐仅提供信息存储空间服务。


友情链接:
Copyright 2018-2021 主页 版权所有,未经授权,禁止转载。