当前位置:首页 > 程序设计 >
《Effective Java中文版》电子书封面

Effective Java中文版

  • 发布时间:2020年08月12日 10:27:35
  • 作者:约书亚
  • 大小:197.6 MB
  • 类别:java电子书
  • 格式:PDF
  • 版本:第3版
  • 评分:9.4

    Effective Java中文版 PDF 第3版

      给大家带来的一篇关于java相关的电子书资源,介绍了关于Effective、Java方面的内容,本书是由机械工业出版社出版,格式为PDF,资源大小197.6 MB,约书亚编写,目前豆瓣、亚马逊、当当、京东等电子书综合评分为:9.4。

      内容介绍

      Effective Java中文版

      Effective Java中文版

      内容介绍

      Java之父James Gosling鼎力推荐、Jolt获奖作品全新升级,针对Java 7、8、9全面更新,Java程序员必备参考书。包含大量完整的示例代码和透彻的技术分析,通过90条经验法则,探索新的设计模式和语言习惯用法,帮助读者更加有效地使用Java编程语言及其基本类库。

      全书共12章,90条。第1章为引言;第2章阐述何时以及如何创建和避免创建对象,如何确保对象能够适时地销毁,以及如何管理对象销毁之前必须进行的各种清除动作;第3章阐述所有对象都通用的方法,如equals、hashCode、toString、clone和finalize以及Comparable.compareTo方法等;第4章阐述作为Java语言的核心以及Java语言的基本抽象单元(类和接口)在使用上的一些指导原则,以设计出更加有用、健壮和灵活的类与接口;第5章和第6章分别阐述在Java 1.5发行版本中新增加的泛型、枚举和注解的*实践,教你如何*限度地享有这些优势;第7章讨论在Java 8中新增的函数接口、Lambda、方法引用,和为处理数据元素的序列提供类库级别支持的Stream API;第8章讨论方法设计的几个方面:如何处理参数和返回值,如何设计方法签名,如何为方法编写文档,从而使方法设计在可用性、健壮性和灵活性上有进一步的提升;第9章主要讨论Java语言的具体细节,包括局部变量的处理、控制结构、类库的使用、各种数据类型的用法、反射机制和本地方法的用法,以及优化和命名惯例;第10章阐述如何充分发挥异常的优点来提高程序的可读性、可靠性和可维护性,以及减少异常使用不当所带来的负面影响,并提供了一些关于有效使用异常的指导原则;第11章阐述写出清晰、正确、文档组织良好的并发程序;第12章讲解序列化方面的技术,其中包括序列化代理模式,它可以帮助你避免对象序列化的许多缺陷。

      目录

      • 第1章 引言  1
      • 第2章 创建和销毁对象  4
      • 第1条:用静态工厂方法代替构造器  4
      • 第2条:遇到多个构造器参数时要考虑使用构建器  8
      • 第3条:用私有构造器或者枚举类型强化Singleton属性  13
      • 第4条:通过私有构造器强化不可实例化的能力  15
      • 第5条:优先考虑依赖注入来引用资源  16
      • 第6条:避免创建不必要的对象  18
      • 第7条:消除过期的对象引用  20
      • 第8条:避免使用终结方法和清除方法  23
      • 第9条:try-with-resources优先于try-f?inally  27
      • 第3章 对于所有对象都通用的方法  30
      • 第10条:覆盖equals时请遵守通用约定  30
      • 第11条:覆盖equals时总要覆盖hashCode  40
      • 第12条:始终要覆盖toString  44
      • 第13条:谨慎地覆盖clone  46
      • 第14条:考虑实现Comparable接口 53
      • 第4章 类和接口  59
      • 第15条:使类和成员的可访问性最小化  59
      • 第16条:要在公有类而非公有域中使用访问方法  62
      • 第17条:使可变性最小化  64
      • 第18条:复合优先于继承  70
      • 第19条:要么设计继承并提供文档说明,要么禁止继承  75
      • 第20条:接口优于抽象类  79
      • 第21条:为后代设计接口  83
      • 第22条:接口只用于定义类型  85
      • 第23条:类层次优于标签类  86
      • 第24条:静态成员类优于非静态成员类  88
      • 第25条:限制源文件为单个顶级类  91
      • 第5章 泛型  93
      • 第26条:请不要使用原生态类型  93
      • 第27条:消除非受检的警告  97
      • 第28条:列表优于数组  99
      • 第29条:优先考虑泛型  102
      • 第30条:优先考虑泛型方法  106
      • 第31条:利用有限制通配符来提升API的灵活性 109
      • 第32条:谨慎并用泛型和可变参数  114
      • 第33条:优先考虑类型安全的异构容器  118
      • 第6章 枚举和注解  123
      • 第34条:用enum代替int常量  123
      • 第35条:用实例域代替序数  131
      • 第36条:用EnumSet代替位域  132
      • 第37条:用EnumMap代替序数索引  134
      • 第38条:用接口模拟可扩展的枚举  138
      • 第39条:注解优先于命名模式  140
      • 第40条:坚持使用Override注解 147
      • 第41条:用标记接口定义类型  149
      • 第7章 Lambda和Stream  151
      • 第42条:Lambda优先于匿名类  151
      • 第43条:方法引用优先于Lambda  154
      • 第44条:坚持使用标准的函数接口  156
      • 第45条:谨慎使用Stream  159
      • 第46条:优先选择Stream中无副作用的函数  164
      • 第47条:Stream要优先用Collection作为返回类型  168
      • 第48条:谨慎使用Stream并行 172
      • 第8章 方法  176
      • 第49条:检查参数的有效性  176
      • 第50条:必要时进行保护性拷贝  179
      • 第51条:谨慎设计方法签名  182
      • 第52条:慎用重载  184
      • 第53条:慎用可变参数  189
      • 第54条:返回零长度的数组或者集合,而不是null  190
      • 第55条:谨慎返回optinal  192
      • 第56条:为所有导出的API元素编写文档注释  196
      • 第9章 通用编程  202
      • 第57条:将局部变量的作用域最小化  202
      • 第58条:for-each循环优先于传统的for循环 204
      • 第59条:了解和使用类库  207
      • 第60条:如果需要精确的答案,请避免使用f?loat和double  209
      • 第61条:基本类型优先于装箱基本类型  211
      • 第62条:如果其他类型更适合,则尽量避免使用字符串  213
      • 第63条:了解字符串连接的性能  215
      • 第64条:通过接口引用对象  216
      • 第65条:接口优先于反射机制  218
      • 第66条:谨慎地使用本地方法  220
      • 第67条:谨慎地进行优化  221
      • 第68条:遵守普遍接受的命名惯例  223
      • 第10章 异常  227
      • 第69条:只针对异常的情况才使用异常  227
      • 第70条:对可恢复的情况使用受检异常,对编程错误使用运行时异常  229
      • 第71条:避免不必要地使用受检异常  231
      • 第72条:优先使用标准的异常  232
      • 第73条:抛出与抽象对应的异常  234
      • 第74条:每个方法抛出的所有异常都要建立文档  235
      • 第75条:在细节消息中包含失败-捕获信息 237
      • 第76条:努力使失败保持原子性  238
      • 第77条:不要忽略异常  239
      • 第11章 并发  241
      • 第78条:同步访问共享的可变数据  241
      • 第79条:避免过度同步  245
      • 第80条:executor、task和stream优先于线程  250
      • 第81条:并发工具优先于wait和notify  251
      • 第82条:线程安全性的文档化  256
      • 第83条:慎用延迟初始化  258
      • 第84条:不要依赖于线程调度器  261
      • 第12章 序列化  263
      • 第85条:其他方法优先于Java序列化 263
      • 第86条:谨慎地实现Serializable接口 266
      • 第87条:考虑使用自定义的序列化形式  269
      • 第88条:保护性地编写readObject方法 274
      • 第89条:对于实例控制,枚举类型优先于readResolve  279
      • 第90条:考虑用序列化代理代替序列化实例  282
      • 附录 与第2版中条目的对应关系  286
      • 参考文献  289

      学习笔记

      实例讲述Java IO文件复制

      前言:IO流主要分为两大类,分别是字节流与字符流 注意: 1、音频文件、图片、视频(范围广),就用字节流 2、只涉及到文本的,就用字符流 使用字节流复制文本内容(其他文件也可以) 代码如下: import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;public class CopyFile { public static void main(String[] args) { try{ File inFile=new File("src.txt"); //源文件 InputStream in=new FileInputStream(inFile); //文件输入流 File outFile=new File("tar.txt"); //目标文件 OutputStream out=new FileOutputStream(outFile); //文件输出流 byte[] buff=new byte[1024]; //创建缓冲……

      Java实现表白小程序

      今天闲来无事,教大家一个哄妹子的小case。我们需要创建一个心形图案,按照心形图案的位置和长度,对所创建的字符串进行截断并在所需的位置上输出,最终能呈现在屏幕上满满的爱心。废话不多说,直接上源码看效果 ~ package ddd; import java.awt.*; import javax.swing.JFrame; public class Cardioid extends JFrame { //获取屏幕大小 private static final int WIDTH = 500; private static final int HEIGHT = 500; private static int WINDOW_WIDTH = Toolkit.getDefaultToolkit().getScreenSize().width; private static int WINDOW_HEIGHT = Toolkit.getDefaultToolkit().getScreenSize().height; public Cardioid(){ super("I love you");//设置窗口标题 this.setBackground(Color.BLACK); this.setLocation((WINDOW_WIDTH-WIDTH)/2,(WIN……

      以上就是本次介绍的java电子书的全部相关内容,希望我们整理的资源能够帮助到大家,感谢大家对码农之家的支持。

      上一篇:没有了

      下一篇:揭秘深度强化学习

      展开 +

      收起 -

      媛程序公众号

      重要!由于版权问题,暂停资源分享!关注左边的号有资料打包(惊喜!)

      添加左边“ 媛程序 ”的微信号,获取11月份下架资料打包!(每周更新)

      【JAVA资料完整打包(限时删除!)】

      下载地址:百度网盘下载
      java相关电子书
      JavaScript语言精粹
      JavaScript语言精粹 超清修订版

      JavaScript曾是全世界非常容易误解的言语,由于它肩负过多的特点,包含槽糕的互动和不成功的设计方案,但伴随着Ajax的来临,JavaScript从极受误会的程序语言演化为十分时髦的言语,这除开好

      立即下载
      趣学Javascript:教孩子学编程
      趣学Javascript:教孩子学编程 扫描完整版

      《趣学JavaScript教孩子学编程》用轻松自在的方法,根据细心的、循规蹈矩的实例,及其填满快乐的图例,协助读者轻轻松松地学习培训编程基本知识。本书共16章,从基本知识刚开始,详解了实际操作字符串数组、数组及其循环系统,随后继续学习一些高級话题讨论,如应用jQuery搭建易用性,及其应用画板制图等。这书根据专家教授撰写一些简易有意思的游戏,协助读者把握JavaScript编程。每一章都搭建于上一章的基本之中,而且各章末尾的编程挑戰可以

      立即下载
      企业级Java EE架构设计精深实践
      企业级Java EE架构设计精深实践 完整扫描版

      本书全面、深入介绍了企业级Java EE设计的相关内容,内容涵盖了Java EE架构设计的常见问题。语言简洁,思路清晰,示例丰富、完整,适合具有一定Java基础的读者阅读,尤其适合从事企业级Java EE软件架构和设计的人员阅读

      立即下载
      Java开发手册:泰山版
      Java开发手册:泰山版 完整版

      最近,阿里的《Java开发手册》又更新了,这个版本历经一年的修炼,取名:《Java开发手册(泰山版)》正式出道。 正所谓无规矩不成方圆,在程序员的世界里,也存在很多规范,阿里出版的Java开发手册就是其中之一,从各个方面都约束了程序员该如何有规矩的写代码,以及如何写好代码。 据官方描述,本次共计新增 34 条规约,修改描述 90 处,其中错误码规则更是第一次提出完整的解决方案。

      立即下载
      轻量级Java EE企业应用实战
      轻量级Java EE企业应用实战 高质量第5版

      本书是SSH经典图书升级版,全面拥抱Spring 5轻量级Web开发新特性;面世十余年,历经数十万读者检验,本书适合于有较好的Java编程基础,或者有初步JSP、Servlet基础的读者阅读

      立即下载
      Java EE互联网轻量级框架整合开发
      Java EE互联网轻量级框架整合开发 扫描版

      本书从入门到实际工作要求讲述了SSM框架的技术应用,提高系统性能,NoSQL(尤其是Redis)在互联网系统中已经广泛使用,从原理到实践全面讲解SSM Redis技术应用

      立即下载
      读者留言
      kxjrzyk

      kxjrzyk 提供上传

      资源
      46
      粉丝
      11
      喜欢
      486
      评论
      10

      Copyright 2018-2020 www.xz577.com 码农之家

      版权投诉 / 书籍推广 / 赞助:520161757@qq.com