学Java需要学哪些书?
java技术所要学到的东西是很多的,只要入了这一行,学习是不能停止的,工作节奏在加快,新知识也源源不断,学习的最好途径就是看书,小编给大家推荐这几本java方面的书,搭配学习课程,让学员快速成长,以下就是小编整理的书籍,希望可以帮助到大家。
《深入理解Java虚拟机:JVM高级特性与最佳实践》
如果你不满足于做一个只会写if…else…的Java程序员,而是希望更进一步,我随便举几个例子吧:
1、了解Java代码的底层运行机制
2、定位性能问题
3、对整个系统进行性能调优
4、解决各种奇奇怪怪的线上线下问题
5、更加高级别的,为自己的项目量身定做一款适合自己项目的虚拟机
《HotSpot实战》
所有的Java虚拟机都是遵循着Java虚拟机规范来的,市面上的Java虚拟机几十款,《深入理解Java虚拟机:JVM高级特性与最佳实践》一书里面讲的虚拟机并不针对某种特定的虚拟机,而是从Java虚拟机规范的角度来讲解Java虚拟机。
我们平时使用的乃至商用的大多数Java虚拟机都是Sun公司的HotSpot,大家cmd进入命令行,使用”java-version”命令就可以看到了。如果希望在Java虚拟机规范的基础上更加深入地去理解虚拟机的一些细节是怎么实现的,就可以看一下《HotSpot实战》一书,作者是陈涛。不过由于HotSpot的源码都是C/C++写的,所以要求读者有非常好的C/C++基础,如果对这两门语言不是很熟悉的朋友,看这本书可能对你帮助不是很大。
《Java并发编程实战》
这本书常常被列入Java程序员必读十大书籍排行榜前几位,不过个人不是很推荐这本书。
《Java并发编程实战》作者是Brian Goetz,怎么说呢,这本书个人感受是:
1、文字多代码少
2、讲解多实践少
我觉得这可能就是老外写书的特点吧,因为Java是北美国家(加拿大、美国)开发和维护的,所以老外对Java方方面面的理论知识体系都掌握得是非常清楚和透彻的。翻开这本书看,多线程什么用、什么是死锁、什么是竞争、什么是线程安全等等,方方面面的知识点都用大量的文字篇幅讲解,不免让人感觉十分枯燥,也难让读者有实质性的进步。有兴趣的地方就重点看一下。
《java多线程编程核心技术》
《Java多线程编程核心技术》作者高洪岩。想要学习多线程的朋友,这本书是我大力推荐的,
此书和《Java并发编程实战》相反,这本书的特点是大篇幅的代码+小篇幅的精讲解,可能这和中国人写的书比较偏向实用主义的风格有关。本书关于线程安全、synchronized、Reentrant、Timer等等都用详细的代码进行了讲解,而且每个大知识点下的多个小知识点都会详细讲解到,非常有实践价值。
有兴趣的朋友们,我相信只要你们跟着这本书里面的代码敲、运行、思考,三步走,对于多线程的使用与理解一定会进几大步。
不过这本书的缺点就是对于Java并发包下的一些类像CountDownLatch、Semphore、CyclicBarrier、Future、Callable等都没有讲到,重点的CAS和AQS也没有触及,重点类的实现原理也没有提。当然,这很深入了,在学习了这本书之后如果能再去对这些知识进行一些学习、研究的话,你一定会慢慢成长为一个很厉害的多线程高手。
《Effective Java中文版》
《Effective Java中文版》的作者是Joshua Bloch,这个人就很厉害了,他是谷歌的首席架构师,属于超级技术大牛级别了吧,呵呵。由于没有看过这本书,所以我不好发表评论,但是从这本书的知名度以及其作者的来头来看(多提一句,这本书也是Java之父James Gosling博士推崇的一本书),我相信这一定是一本值得一看的好书。
以上就是小编针对“学Java需要学哪些书?“的内容进行的回答,希望对大家有所帮助,如有疑问,请在线咨询,有专业老师随时为你服务。学习java开发,可以参考千锋提供的java学习路线,该学习路线罗列了各阶段完整的java学习知识,根据千锋提供的java学习路线图,可以让你对学好java开发需要掌握的知识有个清晰的了解,并能快速入门java开发。
相关文章:
【怎样写代码】确保对象的唯一性 -- 单例模式(五):一种更好的单例实现方法(静态内部类)
如果喜欢这里的内容,你能够给我最大的帮助就是转发,告诉你的朋友,鼓励他们一起来学习。 If you like the content here, you can give me the greatest help is forwarding, tell your friends, encourage them to learn together.

郭为:大数据时代的企业管理挑战
互联网时代,创新使得财富积累的速度前所未有的快,贫富不均也前所未有地分化。这个时代,世界的竞争变成人与人的竞争,人与人的竞争就是智慧的竞争,就是人的创新能力的竞争。如何才能提高人的竞争力,是管理科…

如何挑选靠谱的Java培训机构
想要学习java技术的人越来越多,市面上出现的java培训机构也越来越多,很多人都想找一个靠谱的java培训机构,那么到底该如何挑选靠谱的Java培训机构呢?看看下面小编为大家做的详细介绍吧。 如何挑选靠谱的Java培训机构? 首先挑选java培训机…

ActiveMQ在C#中的应用
ActiveMQ是个好东东,不必多说。ActiveMQ提供多种语言支持,如Java, C, C, C#, Ruby, Perl, Python, PHP等。由于我在windows下开发GUI,比较关心C和C#,其中C#的ActiveMQ很简单,Apache提供NMS(.Net Messaging …

数据中心防雷SPD技术漫谈
雷电是大自然里一种普遍现象,在世界的任意角落都会有雷电天气出现,只不过数量不同而已。雷电对大地及地面物体的放电现象成为雷击,这种放电过程会产生强烈的闪电并伴随巨大的声音,对被击物体有严重的危害,会在物体的两…
【怎样写代码】确保对象的唯一性 -- 单例模式(六):扩展案例
如果喜欢这里的内容,你能够给我最大的帮助就是转发,告诉你的朋友,鼓励他们一起来学习。 If you like the content here, you can give me the greatest help is forwarding, tell your friends, encourage them to learn together.

Python数据分析可以应用到哪些领域
随着大数据的应用越来越广泛,应用的行业也越来越多,我们每天都可以看到一些关于数据分析的新鲜应用,从而帮助人们获取到有价值的信息。例如,网购时经常发现电商平台向我们推荐商品,往往这类商品都是我们最近浏览的&…
printf(%d, -10u); 这个输出什么呀, 0或1?
printf("%d", -1<0u); 这个输出什么呀, 0或1?周银辉 既然我这么问了, 那么答案自然不是1,而是0看看下面的代码: 对于-10u输出为-1,似乎理所当然,但为什么-1<0u却输出0呢,也就是说-1不小于0u,好神奇啊…

Enterprise Library 4 缓存应用程序块的设计
缓存应用程序为以下目的而设计: 提供一个大小可管理的 API 集合。允许开发人员添加标准的缓存操作到他们的应用程序中,而不用学习应用程序块的内部工作。用 Enterprise Library 配置控制台来简化配置。有效率的执行。线程安全。某些东西在被多个程序线程…

【软件测试培训】了解jmeter分布式测试
一提到分布式测试,大家肯定会觉得,哇!好高大上,一定很高深的吧,这里老师推出不做傻白甜系列文章,带同学们一步一步理解jmeter的分布式测试。 首先我们来看下jmeter自动化测试的流程 ,见如下图1 【软件测试…

存储过程中返回结果集
存储过程中返回结果 从存储过程中返回结果有三种方式: 1、 返回结果集 这是客户端应用程序返回结果的最通用的方法。结果集是通过使用select语句选择数据产生的。结果集可以从永久表、临时表或局部变量中产生。将结果返回到另一个存储过程不是一种有效的方法。存储…

我的股票交易策略
投资股市已经成为我们进行资产配置的一个重要选择。在这个市场中主流的投资方式无外乎 价值投资 和 趋势投资 两种。价值投资需要了解各种财务指标来评价各支股票,在被市场低估时买入,在被市场高估时卖出。这对于非财务背景的人来说门槛偏高。趋势投资需…

你负责选歌,索尼负责用 AI 谱出风格相似的曲子
近日,索尼巴黎计算机科学实验室(CSL)正在开发一套算法系统 Flow Machines,该系统根据用户的品味谱写歌曲,其歌曲在迎合用户口味的基础上,适用于所有现有音乐风格。 技术人员搭建了一个拥有 13000 多首音乐的…

java培训:Java的十大算法
想要学好java语言,就要打好基础,java要学习的东西有很多,今天小编就来和大家说下java的十大算法。 算法一:快速排序算法 快速排序是由东尼霍尔所发展的一种排序算法。在平均状况下,排序 n 个项目要Ο(nlogn) 次比较。…

PetShop之表示层设计 - 《解剖PetShop》系列之六
六 PetShop之表示层设计 表示层(Presentation Layer)的设计可以给系统客户最直接的体验和最十足的信心。正如人与人的相交相识一样,初次见面的感觉总是永难忘怀的。一件交付给客户使用的产品,如果在用户界面(User Inte…

物联网时代营销怎么做?
这几年和大数据、O2O一样热门的词还包括“物联网”, 物联网是新一代信息技术的重要组成部分,也是“信息化”时代的重要发展阶段。其英文名称是:“internet of things(IoT)”。顾名思义,物联网就是物物相连的互联网。 说的再通俗一…
怎样去掉 CSDN-Markdown 上传图片中的水印
自己一直使用 Markdown 写技术图文,我们知道在 Markdown 中插入图片需要这个图片的URL地址,那么必须得找一个图床来存放图片。 // Markdown 中插入图片的语法结构 我的方法是这样的:在 CSDN 上发一篇…

Python编程比较好的机构怎么选择
想要进入到IT行业,很多人的首要选择都是学习Python编程语言,因为Python编程语言入门是相对比较简单的,但是想要学好Python技术,找一个好的Python培训机构是非常重要的,那么Python编程比较好的机构怎么选择呢?来看看下…
赚钱是刚需,如何正确的交易股票?
试着考虑下面这些情景: 听隔壁老王说,最近股市行情不错,自己也想买点股票,但不知道该买那支?犹犹豫豫到处打听消息。 买入一支股票后,时不时就会拿出手机看看它的价格,有时候甚至一天要看很多…

C# Windows CE使用小技巧实例
C# Windows CE使用的一些感受:使用Windows的开发机上用C#启动一个外部程序的方法有很多,但这些方法用在使用WinCE的目标工控机上都无能为力。 C# Windows CE使用1、 现在以打开一个IE为例,介绍如何在WinCE下使用C#来打开一个外部文件…

Ovirt 安装部署方法
官方的安装文档:http://www.ovirt.org/documentation/install-guide/Installation_GuideOvirt note 系统镜像的下载:http://www.ovirt.org/download http://mirror.isoc.org.il/pub/ovirt/ovirt-4.1/iso/ovirt-node-ng-installer-ovirt/4.1-2017072816/…

零基础如何选择适合的Java培训课程
很多人都想要学习java技术,但是害怕自己是零基础学不好,所以想要找专业的java培训机构进行学习,但是零基础如何选择适合的Java培训课程成了他们比较头疼的事情,下面小编就为大家做下详细的介绍。 零基础如何选择适合的Java培…

Android Intent的几种用法全面总结
Android Intent的几种用法全面总结 Intent, 用法Intent应该算是Android中特有的东西。你可以在Intent中指定程序要执行的动作(比如:view,edit,dial),以及程序执行到该动作时所需要的资料。都指定好后,只要调用startAct…
七天学会「股票数据分析软件」的开发(中)
两天前,我写了 七天学会「股票数据分析软件」的开发(上),号召大家尝试着写写代码,不知道大家进度如何。 如果存在掌握一种技能的刚需,而且知道正确的学习方法,经过刻意练习,这门技能…

《Oracle高性能SQL引擎剖析:SQL优化与调优机制详解》一1.1 生成执行计划
1.1 生成执行计划 在Oracle中,任何一条语句在解析过程中都会生成一个唯一的数值标识,即SQL_ID。而同一条语句,在解析过程中,可能会因为执行环境的改变(例如某些优化参数被改变)而生成多个版本的游标&#…

软件测试培训:高薪测试技术要掌握哪些
职业技能一 1. 软件测试: 1) 熟练灵活地运用等价类、边界值、判定表法、因果图法等各种方法设计测试用例,包括单元测试、集成测试、系统测试用例设计。 2) 牢固掌握了软件测试计划、测试日报、测试报告的写作方法与要领。 3) 针对B/S、C/S架构及不同…

MFC-4简单的窗口重绘(非部分重绘)
#include <afxwin.h> #include "resource.h" #include <afxtempl.h> //定义模板类的头文件class MyDocument : public CDocument { public:CArray<CPoint,CPoint &> pArray;//<保存的数据类型,读取保存数据类型的返回值>void AddPoint…
七天学会「股票数据分析软件」的开发(下)
昨天下午把《我不是药神》这部电影看了,搞得我哭的稀里哗啦,里面有一些情节触痛了内心中最薄弱的地方。药厂没有错,他们要收回前期投入的研发成本。主人公 程勇 只能算是整个事件的牺牲品,通过他的牺牲让国家关注到白血病人这个群…

那些对混合云开发和应用程序环境的错误认识
企业架构师们在开发混合云计算应用程序并为支持程序云计算而选择云计算供应商之前,他们应当好好完成他们的准备工作。选择错误的供应商和在错误的环境中开发应用程序都会对应用程序的运行性能、工作流程、变更成本、以及与客户的沟通和交易带来负面影响。 在本文中&…

2021年UI设计培训机构哪个好
想要学好UI设计,选择报一个专业的UI设计培训机构是非常明智的选择,为什么这么说呢?因为培训机构的课程都是根据当下的行业环境制作出来的,而且有专业老师,比自学要好很多,那么在2021年UI设计培训机构哪个好呢?来看看…