{{sellerTotalView > 1 ? __("sellers", {number: sellerTotalView}) : __("seller", {number: sellerTotalView}) }}, {{numTotalView > 1 ? __("items", {number: numTotalView}) : __("item", {number: numTotalView}) }}
免運費
Yami

Nickname

請告訴我們怎麼更好地稱呼你

更新你的名字
賬戶 訂單 收藏
{{ inviteNavTitle }}
退出登入

切換配送區域

不同區域的庫存和配送時效可能存在差異。

歷史郵編

{{email ? __('Got it!') : __('Restock Alert')}}

我們將在商品到貨後第一時間通知你。

取消
Yami

京東圖書

Java特种兵(上册 附光盘)

{{buttonTypePin == 3 ? __("Scan to view more PinGo") : __("Scan to start")}}

Java特种兵(上册 附光盘)

{{__(":people-members", {'people': item.limit_people_count})}} {{ itemCurrency }}{{ item.valid_price }} {{ itemCurrency }}{{ item.invalid_price }} {{ itemDiscount }}
後結束
{{ itemCurrency }}{{ item.valid_price }}
{{ itemCurrency }}{{ priceFormat(item.valid_price / item.bundle_specification) }}/{{ item.unit }}
{{ itemDiscount }}
{{ itemCurrency }}{{ item.valid_price }} {{ itemCurrency }}{{ priceFormat(item.valid_price / item.bundle_specification) }}/{{ item.unit }} {{ itemCurrency }}{{ item.invalid_price }} {{itemDiscount}}
{{ itemCurrency }}{{ item.valid_price }}
後結束促銷
後開始秒殺 後結束秒殺
{{ getSeckillDesc(item.seckill_data) }}
{{ __( "Pay with Gift Card to get sale price: :itemCurrency:price", { 'itemCurrency' : itemCurrency, 'price' : (item.giftcard_price ? priceFormat(item.giftcard_price) : '0.00') } ) }} ({{ itemCurrency }}{{ priceFormat(item.giftcard_price / item.bundle_specification) }}/{{ item.unit }}) 詳情
商品有效期

已下架

我們不知道該商品何時或是否會重新有庫存。

當前地址無法配送
已售完

商品描述

展開全部描述
Editer Recommend

淘宝网Java技术专家,CSDN超人气博主作品,全面提升Java单兵作战能力!
该书“雕琢”的系统,为阿里超大规模的数据库集群服务!
完全突破Java图书从环境搭建到语法点罗列再到案例总结的写作惯例,直逼底层,懂原理,看源码,奠定Java老A的坚实基础!
没有数页代码的简单堆砌,有的是新颖的思考方法;没有各类语法的无聊罗列,更多的是在探索技术背后的思路;没有难懂术语的枯燥晦涩,用的是对话和探讨;轻松,愉快,读来不忍释卷,要学Java,这本书不容错过!

Content Description

《Java特种兵》分上、下册,上册强调个人修为的提升,也是本书主旨所在,希望能帮助各位读者朋友提升“功力”;下册将基于上册的内容融入设计、实现的细节。
《Java特种兵(上册)》上册共10章,主要内容包括:从简单的角度来验证功底,通过一些简单的例子来说明我们应当如何去掌握Java的基础;关于计算机的工作原理和Java虚拟机的基础知识;Java通信;Java并发;数据库知识;源码基础,说明Java常见的框架基础知识,比如反射、AOP、ORM、Annotation和配置文件的原理;JDBC、Spring的源码讲解,通过几种不同类型的框架源码,希望读者能体会源码之中的思维方式、设计、架构,以及了解到不同源码的区别所在;最后是知识总结。

Comments

★在阿里,成为老A,特别是成为作者这样技术专家的level,其“雕琢”的系统必须是经历双十一的洗礼和摧残而巍然鼎立的系统。本书从Java功底基础、源码介绍(特别是JDBC和Spring方面)、Java设计模式、Java实现方面,介绍Java后端开发需要的一个一个的核心点,所以非常合适在互联网公司、软件公司等从事java核心系统开发的小伙伴们。全书内容充实,并附有大量的代码、数据和图表,比较符合大多数程序员的喜好,也非常具有指导实践落地的能力,另值一提的是,作者充分使用业余时间编撰,已经年载有余,期间更是数易其稿,且精工细雕,充分体现了技术人员的完美追求。本书的主题一则是java特种兵的成长历程,二则是希望此历程的“得道”思想为导向,让读者形成自身的独自思考和总结的能力。
——朱金清(阿里花名:穆公)


★本书全面地描述了一个合格的Java程序员所必须理解的基本知识,内容深入浅出,语言幽默诙谐,知识点覆盖面广,阐述理论又不拘泥于理论,例子丰富,实战性极强,显示出小胖哥对JVM的深入理解和丰富的Java实践经验,非常适合Java初学者作为入门教程。对有一定的Java编程经验,但是渴望对Java代码背后隐藏的JVM基础知识有更深入理解的同学来说,更是一本不可多得的好书。同时,本书也凝聚了小胖哥和他的同事们对Java系统架构与设计的独特理解,处处体现了Java程序员应有的工作和学习方法。相信读者在读完此书后,学到的不仅仅是扎实JVM及Java基础知识,迅速成为Java开发领域的老A,更能学到胖哥的追根究底的学习态度,受益终生。
——洪熙
资深Java工程师,主要从事JVM内核研发工作
阿里云-核心系统研发部-专用计算组


★入职不久,就听说谢宇在写一本面向Java开发人员的书籍,那个时候在想市场上JAVA方面的书籍已经够多了,还有什么内容可以写的呢?但在不久后当我拿到前面几章的手稿的时候,就迫不及待地阅读,我发现,对于已经在这个行业内从事多年研发的从业人员来说,有很多知识点在过去的时间都没有重视而被忽略,而作者不但用一种诙谐幽默的方式表达出来,而且还引导读者一起思考,无处不体现出作者深厚的功底。
——锐意(真名:廖科)
资深Java工程师
多年SNS开发的经验
阿里数据库方案-iDB组担任leader


★如果想要一本普及Java基础的书,这本可能并不合适;这本书适合有一些Java基础,想要深入的同学;内容涵盖了作者多年使用Java的经验,对初学者,犹如中国人写的ThinkInJava,内容广泛深入而又不拖沓,专注Java排雷避坑;期间还穿插了一些作者对于程序员职业生涯的感悟,如果你初入IT这行感到迷茫,在这本书里可以找到方向。
——顼阳(真名:许飞飞)
数据方案-大数据方案,资深数据库工程师
Hbase方面有较深的造诣。


★淘宝80%的开发工程师都在使用Java,书中很多的技术问题在淘宝的业务场景下均已遇到。全书不仅介绍了各种Java的技术,还融入了作者在淘宝多年的学习心得和想法,非常适合初学者业余阅读和技术提升。这是我读过的最有意思,最轻松愉快的一本Java基础书籍。
——方腾飞
并发编程网网站主编
支付宝资深Java工程师

Catalogue

第1篇 Java功底篇
第1章 扎马:看看功底如何
1.1 String的例子,见证下我们的功底
1.1.1 关于“==”
1.1.2 关于“equals”
1.1.3 编译时优化方案
1.1.4 补充一个例子
1.1.5 跟String较上劲了
1.1.6 intern/equals
1.1.7 StringBuilder.append与String“+”的PK
1.2 一些简单算法,你会如何理解
1.2.1 从一堆数据中找max和min
1.2.2 从100万个数字中找最大的10个数字
1.2.3 关于排序,实际场景很重要
1.2.4 数据库是怎么找数据的
1.2.5 Hash算法的形象概念
1.3 简单数字游戏玩一玩
1.3.1 变量A、B交换有几种方式
1.3.2 将无序数据Hash到指定的板块
1.3.3 大量判定“是|否”的操作
1.3.4 简单的数据转换
1.3.5 数字太大,long都存放不下
1.4 功底概述
1.4.1 什么是功底
1.4.2 功底有何用途
1.4.3 如何磨练功底
1.5 功底补充
1.5.1 原生态类型
1.5.2 集合类
1.6 常见的目录与工具包
1.7 面对技术,我们纠结的那些事儿
1.7.1 为什么我这里好用,哪里不好用
1.7.2 你的程序不好用,你会不会用,环境有问题
1.7.3 经验是否能当饭吃
1.8 老A是在逆境中迎难而上者
第2章 Java程序员要知道计算机工作原理
2.1 Java程序员需要知道计算机工作原理吗
2.2 CPU的那些事儿
2.2.1 从CPU联系到Java
2.2.2 多核
2.2.3 Cache line
2.2.4 缓存一致性协议
2.2.5 上下文切换
2.2.6 并发与征用
2.3 内存
2.4 磁盘
2.5 缓存
2.5.1 缓存的相对性
2.5.2 缓存的用途和场景
2.6 关于网络与数据库
2.6.1 Java基本I/O
2.6.2 Java的网络基本原则
2.6.3 Java与数据库的交互
2.7 总结
第3章 JVM,Java程序员的OS
3.1 学习Java虚拟机对我们有什么好处
3.2 跨平台与字节码基本原理
3.2.1 javap命令工具
3.2.2 Java字节码结构
3.2.3 Class字节码的加载
3.2.4 字节码增强
3.3 从虚拟机的板块开始
3.3.1 Hotspot VM板块划分
3.3.2 “对象存放位置”小总结
3.3.3 关于永久代
3.4 常见的虚拟机回收算法
3.4.1 串行GC
3.4.2 ParallelGC与ParallelOldGC
3.4.3 CMS GC与未来的G1
3.4.4 简单总结
3.4.5 小小补充
3.5 浅析Java对象的内存结构
3.5.1 原始类型与对象的自动拆装箱
3.5.2 对象内存结构
3.5.3 对象嵌套
3.5.4 常见类型 & 集合类的内存结构
3.5.5 程序中内存拷贝和垃圾
3.5.6 如何计算对象大小
3.5.7 轻松玩一玩int[2][100]PK int[100][2]
3.6 常见的OOM现象
3.6.1 HeapSize OOM
3.6.2 PermGen OOM
3.6.3 DirectBuffer OOM
3.6.4 StackOverflowError
3.6.5 其他的一些内存溢出现象
3.7 常见的Java工具
3.7.1 jps
3.7.2 jstat
3.7.3 jmap
3.7.4 jstack
3.7.5 jinfo
3.7.6 JConsole
3.7.7 Visual VM
3.7.8 MAT(Memory Analyzer Tool)
3.7.9 BTrace
3.7.10 HSDB
3.7.11 工具总结
3.8 总结
3.8.1 写代码
3.8.2 心理上战胜虚拟机带来的恐惧
第4章 Java通信,交互就需要通信
4.1 通信概述
4.1.1 Java通信的基本过程
4.1.2 Java通信的协议包装
4.1.3 编写自定义通信协议
4.1.4 Java的I/O流是不是很难学
4.2 Java I/O与内存的那些事
4.2.1 常规I/O操作的运作过程
4.2.2 DirectBuffer的使用
4.2.3 关于Buffer
4.2.4 FileChannel的加锁
4.3 通信调度方式
4.3.1 同步与异步
4.3.2 阻塞与非阻塞
4.3.3 Linux OS调度IO模型
4.3.4 Java中的BIO、NIO
4.3.5 Java AIO
4.4 Tomcat中对I/O的请求处理
4.4.1 Tomcat的配置&一个请求的响应
4.4.2 Request、Response对象生成
4.4.3 拉与推
第5章 Java并发,你会遇到吗
5.1 基础介绍
5.1.1 线程基础
5.1.2 多线程
5.1.3 线程状态
5.1.4 反面教材suspend、resume、stop
5.1.5 调度优先级
5.1.6 线程合并(Join)
5.1.7 线程补充小知识
5.2 线程安全
5.2.1 并发内存模型概述
5.2.2 一些并发问题描述
5.2.3 volatile
5.2.4 final
5.2.5 栈封闭
5.2.6 ThreadLocal
5.3 原子性与锁
5.3.1 synchronized
5.3.2 什么是乐观锁
5.3.3 并发与锁
5.3.4 Atomic
5.3.5 Lock
5.3.6 并发编程核心AQS原理
5.3.7 锁的自身优化方法
5.4 JDK 1.6并发编程的一些集合类
5.5 常见的并发编程工具
5.5.1 CountDownLatch
5.5.2 CyclicBarrier
5.5.3 Semaphor
5.5.4 其他工具简介
5.6 线程池&调度池
5.6.1 阻塞队列模型
5.6.2 ThreadPoolExecutor
5.6.3 调度器ScheduleThread PoolExecutor
5.7 总结:编写并发程序要注意些什么
5.7.1 锁粒度
5.7.2 死锁
5.7.3 “坑”很多
5.7.4 并发效率一定高吗
5.8 其他的并发编程知识
5.8.1 ShutdownHook(钩子线程)
5.8.2 Future
5.8.3 异步并不等价于多线程
第6章 好的程序员应当知道数据库基本原理
6.1 开发人员为什么要知道数据库原理
6.2 从开发人员角度看数据库原理
6.2.1 实例与存储
6.2.2 数据库基本原理
6.2.3 索引基本原理
6.2.4 数据库主从基本原理
6.2.5 我们经常相信的那些经验
6.3 从程序员角度看数据库优化方法
6.3.1 不同领域的SQL区别
6.3.2 执行计划
6.3.3 SQL逻辑的例子
6.3.4 模型结构设计的优化
6.3.5 临时表
6.3.6 分页知识补充
6.3.7 计算count值
6.3.8 分布式事务探讨
6.3.9 其他
6.4 学会最基本的性能诊断
6.4.1 进入云数据库时代
6.4.2 从程序员角度关注的数据库诊断信息
6.5 数风流存储,还看今朝
第2篇 源码篇
第7章 源码基础
7.1 为何会出现框架
7.2 阅读框架前的技术储备
7.2.1 反射基础知识
7.2.2 AOP基础
7.2.3 ORM基础
7.2.4 Annotation与配置文件
第8章 部分JDBC源码讲解
8.1 JDBC通用接口规范
8.2 JDBC Driver注册
8.3 创建Connection
8.4 SQL执行及处理
8.4.1 创建Statement
8.4.2 Batch设置批处理
8.4.3 fetchSize与maxRows
8.4.4 setQueryTimeout与cancel
第9章 部分Spring源码讲解
9.1 Spring MVC
9.1.1 Spring加载
9.1.2 Spring MVC处理一个简单请求
9.2 Spring事务管理器
9.2.1 JDBC事务的基本思想
9.2.2 Spring事务管理器的基本架构
9.2.3 Spring如何保存Connection
9.2.4 Spring如何保证程序中多次获取到的连接是同一个
9.3 思考:自己做框架有眉目了吗
第10章 看源码的一些总结
10.1 高手看API的能力
10.2 通过源码能否量化性能与稳定性
10.3 思考相似方案和技术的优缺点
10.4 明确场景和业务,不做技术控
10.4.1 谈谈技术控的那些事
10.4.2 明确业务背景的例子
10.5 胖哥对框架的浅析
10.5.1 框架由来的一个补充
10.5.2 开源框架与扩展
10.5.3 框架与解决问题
10.6 学海无涯,心境无限

Introduction

本书书名为《Java特种兵》,又名《Java老A》,目的很简单,希望作为读者朋友的你,有一天能够成为一个单兵作战能力极度强悍的Java程序员。众所周知,Java程序员多如牛毛,我希望学习本书的读者有志者事竟成、出类拔萃,练就一身好本领,成为Java界的特种兵。
关于本书
冰冻三尺,非一日之寒。本书不是什么神功秘籍,所以它无法让你在短时间内从一个小鸟变成一个牛人,更无法让你从牛人成为大师,这本书是希望读者朋友能够在纠结的时候想起还可依赖它。因为本书不仅仅在讲解一些知识,同时也包含了作者以及作者同事的一些工作经历,以及工作经历中的那些痛苦与纠结,我们希望在这本书的陪伴下,你在纠结之时选择的不是放弃自我,而是坚持到胜利的那一刻。
作者本人也不是什么牛人,更不是绝顶高手,只能说我们经历的某些事情也许值得去分享,这些内容不仅仅包含一些知识,同时也包含了很多思想、方法和面对问题的态度,注重功底和修为的提升。如果有一天你发现这本书带给你更多的是方法,从而让你建立起自己的许多思路,能够快速学习和成长,那么本书的一个重要目的就达到了;如果有一天你发现再去看某些“牛人秘籍”会比以前轻松和愉悦,那么也许这本书有点小功劳。
本书不是什么代码大全,也不是专门讲解某些指定的知识板块的书籍(例如JVM),并不会针对某些专门的知识板块去做过细的说明,也不会去说明详细的API,更不会全面地说明它们的源码,这是没有意义的。通过本书,希望你能从内心认识到“知识无涯”,我们总会遇到自己没有见过的问题,需要学会的就是如何面对这些问题,即如何去思考和定位,如何去学习和成长。
在本书中,可能会以各种“换位思考”的方式来探讨一些技术内容,从技术本身的角度来讲,侧重于讲解技术之中蕴藏的各种奥秘以及探索奥秘的一些思路,而不是讲解一些技术的使用,希望读者在这个过程中开始有意识地去理解知识应有深浅之分,并同时真正掌握Java基础,提升自我的功底,同时还能找到提升功底的方法。
本书中许多对话和探讨的模式,适合像小说一样来静心品味,我相信如果你能静心,那么不论是初学者还是有一定功底的人,都能从本书中受益。作者本人在刚进入大学的时候,是一个连计算机是什么都不知道的人,也曾经有过为了通过C语言考试而死记硬背代码的经历,后来通过不断努力,才有能力写出这本书。因此,本书会结合当时胖哥从一个计算机界的“文盲”开始成长的过程中所拥有的一些“可爱”的思想经历,如果你有类似的思想经历,希望这本书能够帮助你,也同时希望你理解到:只要你愿意,你就一定行的!
本书有的内容风格会偏于娱乐,这些内容所描述的技术肯定不会那么严谨,由于不严谨,可能会让不同的读者产生仁者见仁、智者见智的情况。对于某些有着同样工作经历的人看来,也许会有着发自内心的共鸣,对于初学者可以是一个大概的形象理解。虽然书中的许多解释并不是技术点上的准确解释,但我不希望初学者“小伙伴们”仅仅注重娱乐本身的话题,而要想想这种娱乐的例子所带给自己的一些感性认识。
本书会谈到一些成长性的内容,因此我们可以先大概定位一下一些不同层次的人会怎样思考,怎样做事情,让大家有个形象上的认识。
Java学习三段位
许多初学者,就像是无头苍蝇,四处乱撞,什么都想学,学了就丢,而且喜欢钻牛角尖,甚至没有独立思考的习惯,遇到问题总是先问,再解决问题。他们经常会问:“为什么我的东西在这好用,在那不好用?”因为你还根本不知道问题的原因,当然不知道这么多的为什么了,任何问题都需要定位分析,再解决,再总结。面对问题要静下心来通过自己对基础的认识来分析可能的原因,然后逐步缩小范围,再定位问题。如果抛出一个错误就能知道原因,那么直接设计一个答题的机器就可以了,而不需要任何人为的介入。
学到一定程度的人,懂得思考,懂得换位思考,能解决大多实际问题,他们不仅仅能开始自己定位问题,而且开始具有“前瞻性”,思考一些问题未来可能存在的潜在情况,也开始逐步关注一些内在原理。不过,可能是艺高人胆大,这些人有可能会犯一些不该犯的错误,他们通常是一些十分优秀的程序设计者,很多时候可能是为了展现自己的技术能力,会将一些不值得去做的事情不断细化和优化,或者去做一些别人做过的事情,如果因为这样丢掉主业务,则通常说它是过度优化、过度设计、重复制造。作者本身也有同样的亲身经历,而矛盾在于是否真的是过度设计,在不同的场景下会有不同的看法和评价,因此这个阶段的同学,通常会有一个纠结期。在这个阶段的人开始讲究内外双修,也同样是一个积土成山、积水成渊的过程,因为有一定的功底,学习很多知识都很快,在知识面上会有很大的突破,在知识点上也会逐步加深,可能在工作中不论是业务还是技术上都有了很多的选择,被认为是工作能力很强的人。一些很“牛”的开发人员就会开始意识到很多代码如何去编写会更优雅、更加高效,用更简单的代码搞定更多的问题,但还未上升到系统级别和架构级别。
可能更高级别的人开始具有很强的全局观,让系统全局更加具有可维护性和伸缩性,系统性能良好,稳定性十足,能搞定各类架构、部署、规范化等相关的问题,在某些领域上也是说话很有分量的人物。他们可能会花很多时间去写通用模型和设计,将难题简单化,解决大家解决不了的难题。通常会尽量让系统的维护变成一条配置或是几条简单代码,但是可以顶得上一群人写一堆代码,这就是特种兵程序员的“快”、“准”、“狠”、“稳”。
这里的各种级别仅仅是作者“自言自语”,并不代表什么,要做到没有级别在心中才能真正让自己快速成长。另外,看了这些级别并不代表今天我是初学者,明天将不好的习惯改掉后就“脱胎换骨”了,也并不代表自己在某件小事情上有了大师的风范就代表自己是大师了。这些东西都是经历一些事情后才会形成一些自然意识,我们只是有意识地去学习他们为什么会这样做事情,为什么年轻人比老员工有活力,但通常来讲“姜还是老的辣”。
本书读者对象
□适合对象
(1)有一定Java基础,并希望能在Java技术上有所成长的人。
本书学习有一定门槛,如果是初学者,则可以先以书中的一些例子为引导,希望了解为什么的时候,再来看其中的解释。
(2)对于能静心看书的初学者,可以迭代着看本书。
虽然有一定门槛,不过初学者只要能静心地迭代着读几次后,你或许也能体会出里面有很多思想、方法、解决问题的手段、看问题的侧面,甚至面对问题的心态,那么也可以受益良多。
(3)本书是一个载体,一个推崇自我修为、内外双修的载体,修行看个人,所以适合于想要以自我提升为主要目的的读者。
(4)工作一段时间,对知识和发展的方向很迷茫,甚至对某些观念也比较迷茫,但是又渴望去解决这些问题,渴望自己成长,渴望自己能找到道路的人。
□不适合对象
(1)Java方面的高手和牛人,因为这本书并不能助你从牛人变成大师。
(2)做客户端(如Android)或嵌入式的Java程序员,因为书中大多内容是以服务器端Java来讲解的,极少考虑客户端的问题。
(3)如果你对自己或周围的一切很绝望,看到的所有东西都是邪恶、虚伪的,也没有想过要让自己进步。
(4)希望这本书成为技术字典的同学不适合读,因为这本书不是代码大全,也不是知识点精准解释的汇聚,更不是API的列表。
(5)希望系统性学习某些专业知识的同学不适合看本书,因为本书讲解的是一种“碎片化”学习方式,或者说是以一些小例子为基础,进一步处理相关问题的方式。
如何阅读本书
作为书籍的作者,希望读者能够快乐地学到知识,每天空余时间看看而不是一种压力,面对技术拥有独自思考问题的能力,而并非掌握某种技术本身,通过轻松地接触很多知识并且能有所体会,不断地去总结、抽象,能得出自己的分析问题、解决问题的方法,磨炼出超越普通程序员的功底,最终成为Java老A。
本书其实是一本Java的野书、杂谈,会尽量用通俗易懂的方式来讲解一些复杂的问题和技术。不过,这毕竟不是一本娱乐的书,某些内容胖哥还是会说得比较严谨。书中除了讲解一些“功底类”的技术,大部分技术不会讲得太深,大多只是抛砖引玉给你一个思路,当你需要去接触更深的技术的时候,在这本书中可能会有一个较为形象的例子供你参考,也许就大概知道了如何去理解。若功底够好,就会发现万变不离其宗,一切都可以归于基础,而且大多复杂的思路都源自于生活的灵感。
如果是初学者,希望你不要期望每天看太多内容,而是希望你看了后尽量去思考,不用完全看懂,每天能够有一个心得,当你在实践中遇到某些问题开始拥有灵感时,本书或许会印证这一切。
本书提到的技术仅仅是一个引导、一种探讨、一种思路,在阐述一件事情好与不好的时候,通常会以多种角度去看待问题的不同侧面,再来说明为什么会有这样的经验,同时也可能会探讨这些经验是否能够受用终身。因为技术的时代在不断革命,现在的技术十分泛滥,但都殊途同归,我们要跟上时代又要归纳总结,也许很多时候我们没有精力去学习所有的知识,但有精力让自己提升学习能力从而来学习更多的东西,也有精力来探索工作领域内的知识奥秘,而前提是应当有探索奥秘的习惯以及足够的功底。
本书的目的在于个人成长,极少谈到关于团队合作与规范化等方面的知识,当然作为一个单兵作战能力极强的人,应当有这方面的意识和思维,即使本书中没有提及,大家也应当去掌握。同时也请读者朋友注意本书所提倡的单兵作战能力,并不是期望大家去做一个技术上的孤独者,而是为了更好地去工作。
约定
□本书将采用HotspotVM1.6作为讲解的例子(可通过命令“java–version”得到JVM版本),而测试的例子如果是在具体的OS环境下测试,则会单独说明。书中也会提到JDK1.7的内容,相应的代码如果要运行,也要选择JDK1.7。
□本书中“部分例子”,必须采用-server模式来运行和模拟,尤其是第5章并发编程中的许多例子,在例子中通常会有专门的备注和说明,请读者注意参看。
□篇幅所限,本书中的例子大多只是片段,以说明实际的问题为主,需要完整的例子,请参看配书光盘中的相关demo信息,书中的例子都有与之对应的实际代码,除十分复杂的代码外,从demo中获取的代码进行相关的配置后,均可直接在对应平台上按照指定结果运行。
□本书的代码分源码和代码两种,源码为第三方源码,可以到官方网站下载参看,书中会介绍源码的版本和思路,并贴出部分关键源码的功能和设计思路。
□本书从第2篇开始,每一篇都会有“致读者言”,目的是让读者更好地了解这部分内容应该从何种角度去理解,它会说些什么,会给你带来什么,你为什么需要这些。
□网络上大家都称作者为“小胖哥”或“胖哥”,所以在本书中,也会以这两个称呼作为作者本人的代名词。
内容简介
本书分上、下册,总共5篇,上册两篇内容分别是Java功底篇和源码篇,强调个人修为的提升,也是本书主旨所在,希望能帮助各位读者朋友提升“功力”;下册中,将基于上册的内容融入设计、实现的细节。
上册
第1篇Java功底篇
建议所有本书的读者朋友都读一下本篇的内容,所谓“练武不练功,到老一场空”,你若要成为一个老A级程序员,功底的提升是十分重要的。通过对第1篇的学习,希望读者能知道如何验证自己的功底,如何提升自己的功底,而能提升多少,完全要靠你自己的属性哦!
第1章从简单的角度来验证功底,通过一些简单的例子来说明我们应当如何去掌握Java的基础,同时也包含一个“老A级程序员”除功底外还需要有面对逆境的心态。
第2章和第3章分别介绍关于计算机的工作原理和Java虚拟机的基础知识。胖哥认为一个优秀的Java程序员,应当知道自己的程序在计算机内部是如何运行的,更需要知道虚拟机是如何运行的,效率对比怎样,此好比“习武之人,需要知道何为武学”。
第4章讲解Java通信,在了解了运行基本原理后,你应当了解很多网络交互已经被Java的框架包装得不再像通信程序了,就像是“被装修后的房子,你不再知道房屋本身是用什么建造的”。但如果你是老A,就应当知道这些,这样才能知道遇到各种怪异的问题时如何去解决,你会发现:“一切源自基础,偶然问题隐藏必然”。
第5章讲解Java并发,如果读者朋友确实遇不到,则可以跳过,但要成为Java的老A,这应该算是基础知识,老A应该知道Java并发是怎么样的。除了客户端程序及单片机等,Java并发程序处理其实无处不在,就好比“一个城市的交通,很多的车辆需要通信,应当如何调度来提高流量,避免交通事故”。
第6章讲解数据库知识,大部分程序员都应该使用过数据库、文件,通过学习第4章通信方面的内容,应该会有一些概念,但是面对存储,你是否想要了解一些内在,了解一个程序员所需要知道的内在,这样可能会使得你的工作更加得心应手。说了这么多,你是否发觉学习Java为何要了解如此多的东西?是的,你需要知道“多个门派的武学,面对不同的思想碰撞来切磋,才会有更多的体会”。作为一个老A,才会拥有单兵作战能力极强的作战素质。
第2篇源码篇
达到一定程度的程序员一般会开始对实现本身感兴趣,想了解为什么,了解别人是如何设计和实现的。
起初在面对框架的时候,可能会去猜测或测试它是如何实现的,但逐渐发现猜测和测试并不那么靠谱,因为版本和环境影响因素太大,我们开始想要知道一些内在,看源码成为一个必然。源码面前没有秘密可言,看过源码,你会对问题定位和编写代码拥有自信,开始对技术本身有量化的认识。
本篇并不是网罗天下源码,也不会对某种源码做全面讲解,而是通过阅读源码来说明我们应当如何阅读源码。
在本篇开始部分会先介绍为何要阅读源码,讲解哪些源码,如何阅读源码,请有疑问的小伙伴们关注一下哦。
第7章讲解源码基础,说明Java常见的框架基础知识,主要包括:反射、AOP、ORM、Annotation和配置文件的原理。在这里不仅仅会阐述技术本身,同时也会联系一些实际框架的可能实现方法。老A一定要:知其然,知其所以然。
第8章和第9章分别讲解JDBC、Spring的源码,这里不会说明这些三方包的所有源码和关键点。但通过几种不同类型的框架源码,希望读者能体会源码之中的“思维方式、设计、架构”,以及了解到不同源码的区别所在。虽然区别很多,但如果你有一些“百川纳海、源自同门”的感受,那么小伙伴们就成长了很多。
第10章是对第2篇的知识总结,在阅读源码后不是读完就完了,而是应当有所体会。通过对源码基础知识的初步了解和对一些源码的阅读,我们逐步有能力在接触一个自己从未见到的框架时,可以大概知道它的大致内在,并且大多数情况下可以轻松搞定它,即使有一定难度也会从根本的角度去看待这些技术问题,进一步快速地通过看它的代码了解内在,而不会被浮于表面的使用所迷惑。这就好比虽然魔术师的表演眼花缭乱,但是在他们同行眼中都是知根见底的,因为我们也是专业的,所以不应当被一些东西所迷惑。

規格參數

品牌 京東圖書
品牌屬地 China

免責聲明

產品價格、包裝、規格等資訊如有調整,恕不另行通知。我們盡量做到及時更新產品資訊,但請以收到實物為準。使用產品前,請始終閱讀產品隨附的標籤、警告及說明。

查看詳情
加入收藏
{{ $isZh ? coupon.coupon_name_sub : coupon.coupon_ename_sub | formatCurrency }}
{{__("Buy Directly")}} {{ itemCurrency }}{{ item.directly_price }}
數量
{{ quantity }}
{{ instockMsg }}
{{ limitText }}
{{buttonTypePin == 3 ? __("Scan to view more PinGo") : __("Scan to start")}}
由 JD@CHINA 銷售
送至
{{ __("Ship to United States only") }}
滿69免運費
正品保證

已加入購物車

繼續逛逛

為你推薦

{{ item.brand_name }}

{{ item.item_name }}

{{ item.currency }}{{ item.market_price }}

{{ item.currency }}{{ item.unit_price }}

{{ item.currency }}{{ item.unit_price }}

優惠券

{{ coupon.coupon_name_new | formatCurrency }}
領取 已領取 已領完
{{ getCouponDescStr(coupon) }}
{{ coupon.use_time_desc }}
即將過期: {{ formatTime(coupon.use_end_time) }}

分享給好友

取消

亞米禮卡專享價

使用禮卡支付即可獲得禮卡專享價

規則說明

禮卡專享價是部分商品擁有的特殊優惠價格;

購買禮卡專享價商品時,若在結算時使用電子禮卡抵扣支付,且禮卡餘額足夠支付訂單中所有禮卡專享價商品的專享價總和,則可以啟用禮卡專享價;

不使用禮卡支付,或禮卡餘額不滿足上一條所述要求時,將無法啟用禮卡專享價,按照普通售價計算,但您仍然可以購買這些商品;

在購買禮卡專享價商品時,若餘額不足,可以在購物車或結算頁中點擊“充值”按鈕對禮卡進行購買和充值;

商品若擁有禮卡專享價,會顯示“專享”的特殊價格標記;

如有疑問,請隨時聯繫客服;

禮卡專享價相關規則最終解釋權歸亞米所有。

由 亞米 銷售

服務保障

Yami 滿$49免運費
Yami 無憂退換
Yami 從美國出貨

配送資訊

  • 美國

    標準配送 $5.99(不含阿拉斯加,夏威夷),最終價滿$49免運費

    本地配送$5.99(加州,紐約州,新澤西,麻省和賓夕法尼亞,以上州部分地區);最終價滿$49免運費

    兩日達(含阿拉斯加夏威夷)運費19.99美元起

退換政策

亞米網希望為我們的客戶提供最優秀的售後服務,讓所有人都能放心在亞米購物。亞米自營商品在滿足退換貨條件的情況下,可在收到包裹的30天之內退換商品(食品因商品質量問題7天內可退換;為了確保每位客戶都能獲得安全和高質量的商品,對於美妝類產品,一經開封或使用即不提供退款或退貨服務,質量問題除外;其他特殊商品需聯繫客服諮詢)。
感謝您的理解和支持。

查看詳情

由 亞米 銷售

亞米電子禮品卡使用規則

若購買時選擇自動儲值,訂單完成後禮品卡將自動儲值至您的帳戶;

若購買時選擇發送郵件,訂單完成後系統將自動發送卡號和密碼到您填寫的郵箱;

寄送郵件時,任何使用者均可使用郵件中的卡號密碼進行禮卡儲值,請妥善保管郵件資訊。

如接收郵件遇到問題,請聯絡客服處理;

發送郵件時,若禮卡沒有被兌換,可以補發郵件。若已經被其他用戶兌換,無法補償;

亞米網電子禮卡可用於購買自營或第三方商品;

亞米網電子禮卡沒有有效期限限制,長期有效;

亞米網電子禮卡的金額,可分多次使用;

亞米網電子禮卡業務規則,最終解釋權歸亞米網所有。

退換政策

已消費的電子禮卡不支持退款。

JD@CHINA 銷售

服務保障

Yami 滿$49免運費
Yami 最優售後
Yami 美國本土出貨

配送資訊

  • 美國

    標準配送 $5.99(不含阿拉斯加,夏威夷),最終價滿$49免運費

    本地配送$5.99(加州,紐約州,新澤西,麻省和賓夕法尼亞,以上州部分地區);最終價滿$49免運費

    兩日達(含阿拉斯加夏威夷)運費19.99美元起

退換政策

提供30天內退還保障。產品需全新未使用原包裝內,並附有購買憑證。產品品質問題、或錯發漏發等,由商家造成的失誤,將進行補發,或退款處理。其它原因需退貨費用由客戶自行承擔。

由 JD@CHINA 銷售

服務保障

Yami 跨店滿$69免運費
Yami 30天退換保障

亞米-中國集運倉

由亞米從中國精選並集合各大優秀店舖的商品至亞米中國整合中心,合併包裹後將一次合包跨國郵寄至您的地址。跨店包郵門檻低至$69。您將在多商家集合提供的廣泛選購商品中選購商品,輕鬆享有跨店鋪包郵後的低郵資。

退換政策

提供30天內退換保障。產品需在全新未使用的原包裝內,並附有購買憑證。產品品質問題、錯發、或漏發等商家造成的失誤,將進行退款處理。其它原因造成的退換貨郵費客戶將需要自行承擔。由於所有商品均長途跋涉,偶有簡易外包壓磨等但不涉及內部品質問題者,不予退換。

配送資訊

亞米中國集運 Consolidated Shipping 運費$9.99(訂單滿$69 包郵)

下單後2個工作天中國商家出貨,所有包裹抵達亞米中國整合中心(除特別情況及中國境內個別法定假日外)會合併包裹後透過UPS發往美國。 UPS從中國出貨後到美國境內的平均時間為10個工作天左右,可隨時根據直發單號追蹤查詢。受疫情影響,目前物流可能延遲5天左右。包裹需要客人簽收。如未簽收,客人須承擔包裹遺失風險。

由 JD@CHINA 銷售

服務保障

滿69免運費
正品保證

配送資訊

Yami Consolidated Shipping 運費$9.99(訂單滿$69包郵)


Seller will ship the orders within 1-2 business days. The logistics time limit is expected to be 7-15 working days. In case of customs clearance, the delivery time will be extended by 3-7 days. The final receipt date is subject to the information of the postal company.

積分規則

不參加任何折扣活動以及亞米會員積分制度。

退換政策

提供30天內退還保障。產品需全新未使用原包裝內,並附有購買憑證。產品品質問題、或錯發漏發等,由商家造成的失誤,將進行補發,或退款處理。其它原因需退貨費用由客戶自行承擔。

Yami

下載亞米應用

返回頂部

為您推薦

品牌故事

京東圖書

为您推荐

Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折
Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折
Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折
Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折
Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折
Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折

評論{{'('+ commentList.posts_count + ')'}}

分享您的感受,幫助更多用戶做出選擇。

撰寫評論
{{ totalRating }} 撰寫評論
  • {{i}}星

    {{i}} 星

    {{ parseInt(commentRatingList[i]) }}%

Yami Yami
{{ comment.user_name }}

{{ showTranslate(comment) }}收起

{{ strLimit(comment,800) }}查看全部

Show Original

{{ comment.content }}

Yami
查看更多

{{ formatTime(comment.in_dtm) }} 已購買 {{groupData}}

{{ comment.likes_count }} {{ comment.likes_count }} {{ comment.reply_count }} {{comment.in_user==uid ? __('Delete') : __('Report')}}
Yami Yami
{{ comment.user_name }}

{{ showTranslate(comment) }}收起

{{ strLimit(comment,800) }}查看全部

Show Original

{{ comment.content }}

Yami
查看更多

{{ formatTime(comment.in_dtm) }} 已購買 {{groupData}}

{{ comment.likes_count }} {{ comment.likes_count }} {{ comment.reply_count }} {{comment.in_user==uid ? __('Delete') : __('Report')}}

暫無符合條件的評論~

評論詳情

Yami Yami

{{ showTranslate(commentDetails) }}收起

{{ strLimit(commentDetails,800) }}查看全部

Show Original

{{ commentDetails.content }}

Yami
查看更多

{{ formatTime(commentDetails.in_dtm) }} 已購買 {{groupData}}

{{ commentDetails.likes_count }} {{ commentDetails.likes_count }} {{ commentDetails.reply_count }} {{commentDetails.in_user==uid ? __('Delete') : __('Report')}}

請輸入內容

回覆{{'(' + replyList.length + ')'}}

Yami Yami

{{ showTranslate(reply) }}收起

{{ strLimit(reply,800) }}查看全部

Show Original

{{ reply.reply_content }}

{{ formatTime(reply.reply_in_dtm) }}

{{ reply.reply_likes_count }} {{ reply.reply_likes_count }} {{ reply.reply_reply_count }} {{reply.reply_in_user==uid ? __('Delete') : __('Report')}}

請輸入內容

取消

這是到目前為止的所有評論!

發表評論
商品評分

請輸入評論

  • 一個好的暱稱,會讓你的評論更受歡迎!
  • 修改了這裡的暱稱,個人資料中的暱稱也將被修改。
感謝你的評論
你的好評可以幫助我們的社區發現更好的亞洲商品。

舉報

取消

確認刪除該評論嗎?

取消

歷史瀏覽

品牌故事

京東圖書