Tips 《Effective Java, Third Edition》一书英文已经出版,这本书的第二想必很多人都读过,号称Java四大名著之一,不过第二2009年出,到现在已经将近8年的时间,但随着Java 6,7,8,甚至9的发布,Java语言发生了深刻的变化。 在这里第一时间翻译成中文。供大家学习分享之用。条目1. 考虑使用静态工厂方法替代构造方法一个类允许客户端获取其实例的传统方
转载 2023-08-14 10:24:28
1065阅读
  此文做为《Effective Java》系列的第一篇,所以有必要大概说下此书的特点,当然很多人可能都看过,毕竟是有着Java四大名著之一的大名在外,不过总会有萌新不了解,例如我!《Effective Java第三版较之上一新增了对Java7、8、9的一些新特性的条目。而条目的概念可以理解为武功秘籍中的一招一式,学完了每一招一式,就是神功大成之时。第三版在第二的基础上新增了一些条目数,达到
第1条:用静态工厂方法代替构造器静态工厂方法与构造器不同的第一大优势在于,它们有名称。静态工厂方法与构造器不同的第二大优势在于,不必在每次调用它们的时候都创建一个新对象。 它从来不创建对象。 这种方法类似于享元(Flyweight)模式 。 如果程序经常请求创建相同的对象,并且创建对象的代价很高,则这项技术可以极大地提升性能。      在此,列举单例模式的几种创建方式 :public class
Tips 《Effective Java, Third Edition》一书英文已经出版,这本书的第二想必很多人都读过,号称Java四大名著之一,不过第二2009年出,到现在已经将近8年的时间,但随着Java 6,7,8,甚至9的发布,Java语言发生了深刻的变化。 在这里第一时间翻译成中文。供大家学习分享之用。39. 注解优于命名模式过去,通常使用命名模式( naming patter
转载 2023-09-04 22:03:31
157阅读
66. 明智审慎地本地方法Java 本地接口(JNI)允许 Java 程序调用本地方法,这些方法是用 C 或 C++ 等本地编程语言编写的。从历史上看,本地方法主要有种用途。它们提供对特定于平台的设施(如注册中心)的访问。它们提供对现有本地代码库的访问,包括提供对遗留数据访问。最后,本地方法可以通过本地语言编写应用程序中注重性能的部分,以提高性能。使用本地方法访问特定于平台的机制是合法的,但是很
转载 10月前
563阅读
第三版目录第1章第2章创建和销毁对象1  考虑用静态工厂方法替换构造器2  当遇到多个构造器参数时考虑用构建器(建造者)替换3  用私有构造器或者枚举类型强化单例属性4  通过私有构造器强化不可实例化的能力5  依赖注入优先硬连接资源  @6  避免创建不必要的对象7  消除过期的对象引用8  避免使用终结方
转载 2023-09-18 17:02:56
332阅读
背景: 平常我们在创建类的对象的时候一般都是直接通过new的方式创建,这样是最直接也是最简单的方式,但是随着我们的类功能的不断扩展,字段不断增加。直接new的方式会给我们带来一些问题。
转载 2023-07-21 19:42:19
183阅读
Tips 《Effective Java, Third Edition》一书英文已经出版,这本书的第二想必很多人都读过,号称Java四大名著之一,不过第二2009年出,到现在已经将近8年的时间,但随着Java 6,7,8,甚至9的发布,Java语言发生了深刻的变化。 在这里第一时间翻译成中文。供大家学习分享之用。嵌套类(nested class)是在另一个类中定义的类。 嵌套类应该只存在
# 如何实现“Effective Java 中文第三版 PDF” 当您想要实现“Effective Java 中文第三版 PDF”时,首先需要清楚整个流程。这个过程可以分为几个主要步骤: | 步骤 | 描述 | |------|------| | 1 | 获取《Effective Java》的电子文本 | | 2 | 选择合适的PDF库 | | 3 | 编写代码来生成PDF
原创 1月前
193阅读
目录第2章 创建和销毁对象第1条:用静态工厂方法替代构造器第2条:遇到多个构造器参数时要考虑使用构建器例子使用第3条:用私有构造器或者枚举类型强化Singleton属性例子使用第4条:通过私有构造器强化不可实例化的能力第5条:优先考虑依赖注入来引用资源第6条:避免创建不必要的对象例子第7条:消除过期的对象引用第8条:避免使用终结方法和清楚方法第9条:try-with-resources优先于try
Effective Java, Third Edition》一书英文已经出版,这本书的第二想必很多人都读过,号称Java四大名著之一,不过第二2009年出,到现在已经将近8年的时间,但随着Java 6,7,8,甚至9的发布,Java语言发生了深刻的变化。(译者)在这里第一时间翻译成中文。供大家学习分享之用。本书的源代码见 jbloch/effective-java-3e-sour
参数化声明并使用JDK提供的泛型类型和方法通常不会太困难。 但编写自己的泛型类型有点困难,但值得努力学习。 考虑条目 7中的简单堆栈实现:
转载 2023-07-21 19:41:29
75阅读
第7条.消除过期的对象引用1.这段代码中有一个不明显的内存泄漏。如果一个栈先是增长,然后再收缩,那么,从栈中弹出的对象将不会被当做垃圾回收,即使使用栈的程序不再引用这些对象,它们也不会被回收。因为栈内部维护着对这些对象的过期引用。过期引用,是指永远也不会再被解除的引用。在本例中,凡是在elements数组的”活动部分”之外的任何引用都是过期的。活动部分是指elements中下标小于size的那些元
转载 10月前
127阅读
创建和销毁对象01、考虑用静态工厂方法代替构造器优势1:它们有名称优势2:不必每次调用他们的时候都创建一个新的对象优势3:它们可以返回原返回类型的任何子类型的对象02、遇到多个构造器的参数时要考虑构建器Builder模式优势1:易于阅读,参数别名优势2:设置参数的builder生成了一个更好的抽象工厂(Abstract Factory)03、用私有构造器或者枚举类型强化Singleton属性枚举优
转载 10月前
1850阅读
effective java(第三版)---读书笔记 第一章 引言 《 Effective Java》这本书并不厚,而且并不适合初学者,适合有一定的工作经验的java攻城狮。这本书不是百科全书式的JAVA 手册,而是试图在讲述如何正确、高效地使用java这门语言来完成日常的开发工作。 如今(2019)java已经诞生了24个年头,在这
Tips 书中的源代码地址:https://github.com/jbloch/effective-java-3e-source-code 注意,书中的有些代码里方法是基于Java 9 API中的,所以JDK 最好下载 JDK 9以上的版本。51. 仔细设计方法签名这一条目是API设计提示的大杂烩,但它们本身并足以设立一个单独的条目。综合起来,这些设计提示将帮助你更容易地学习和使用API,并且更不
转载 2023-07-12 23:22:12
324阅读
Tips 《Effective Java, Third Edition》一书英文已经出版,这本书的第二想必很多人都读过,号称Java四大名著之一,不过第二2009年出,到现在已经将近8年的时间,但随着Java 6,7,8,甚至9的发布,Java语言发生了深刻的变化。 在这里第一时间翻译成中文。供大家学习分享之用。23. 优先使用类层次而不是标签类有时你可能会碰到一个类,它的实例有两个或更
转载 2023-09-08 20:45:40
157阅读
Tips 《Effective Java, Third Edition》一书英文已经出版,这本书的第二想必很多人都读过,号称Java四大名著之一,不过第二2009年出,到现在已经将近8年的时间,但随着Java 6,7,8,甚至9的发布,Java语言发生了深刻的变化。 在这里第一时间翻译成中文。供大家学习分享之用。自Java 5以来,泛型已经成为该语言的一部分。 在泛型之前,你必须转换从集
转载 4月前
95阅读
# 如何下载《Effective Java第三版中文PDF 在这篇文章中,我们将讨论如何有效地下载《Effective Java第三版的中文PDF。虽然我们将讨论的过程可能会涉及到一些编程技能,但是我将会尽量用通俗易懂的语言来传达所有必要的信息。 ## 整体流程 在我们开始之前,让我们先定义一个整体流程。以下是实现目标的步骤: | 步骤 | 描述 | |------|------| |
原创 10天前
12阅读
1.Java语言支持四种类型:引用类型:类(包括Enum)、接口、数组基本类型2.方法签名由名称、所有参数类型组成;签名的方法不包含返回类型一、创建和销毁对象第1条.用静态工厂方法代替构造器public static Boolean valueOf(boolean b){ return b ? Boolean.TRUE : Boolean.FALSE; }1.静态工厂方法与构造器不同的优势
转载 11月前
418阅读
  • 1
  • 2
  • 3
  • 4
  • 5