《Core Java》是Cay Horstman写的Java畅销书系列.中文名叫《Java核心技术》,是一本公认的比较好的Java入门书籍.
笔者近段时间 拜读了此书的卷一(中文),即基础知识部分,从全书来看,确实内容比较详实,从基础的语法到面向对象的常见特征与用法,再到工程中常见的需要掌握的知识,此书一一作出的解答,而举的例子可谓是十分的巧妙,从基础语法开始,就是举的同一个例子,随着学习的不断深入,这个例子越来越完善,也考虑越来越多的情况,最后能达到一个完整的核心代码的程度.
说完优点,说下缺点吧:缺点很明显,有点虎头蛇尾的感觉,最后几章讲的是swing和并发,先说说swing:书中用了很大的篇幅讲了swing之一位置尴尬的技术,说它尴尬是因为首先java做图形设计本来就不是一个最佳的选择,而作为替代品,javaFX技术自身也不到流行的地步,所以在基础知识里面讲解swing笔者并不认为是个好的选择,事实上,卷二有更深层次的swing组件介绍,如果将之换成javaFX情况会好很多,体系完善且在jdk8中内置,如果java图形界面有将来,那么后者是首选.
在说说并发,在java中多线程是一个重难点,想学好十分困难,而此书中的并发讲解不如人意,十分的简略,有些是直接把javaDoc中的内容给搬过来的,然后简单举个例子,私以为并发起码要在卷二开一个大章仔细讲解然而卷二根本没有,在如今越来越重视程序高效性的风潮中,并发是个越来越不容忽视的话题,中国也是个人口大国,在做产品相关的后台服务时,不得不考虑大并发的问题,所以为了跟上时代,必须需要单独买书学习并发.Cay Horstman也在书中推荐了相应的书籍.
除此以外,有些点也没有涵盖的特别好,特别是java的近现代版本出现的新知识,枚举类,lambda等,前者已经出现的非常频繁但是书中只是草草带过了,而关于lambda也只有一小章带过,不够理解.但是关于接口默认方法和一些java8的新改动比如允许switch的case分支有字符串等等讲解的不错,总地来说,java8的新东西融入了一部分,但是没融入完全,这样虽然我没有拜读过之前版本的《core java》,但是能感受到此书的历史沉淀,不愧是有十个版本的书籍.
顺带一提,Cay Horstman的新书, 《给大忙人看的Java SE 8》笔者已经入手,里面有比较全的java8的所有改动,包括javaFX的初步介绍以及入门,据笔者不负责任的猜测,有可能此书的部分内容会加入到下一版本的《core java》中.
书籍信息:
作者:Cay Horstman
个人主页: