Quotes from Effective Java Programming Language Guide

272 pages

Rating: (5.1K votes)


“One advantage of static factory methods is that, unlike constructors, they have names.”
― quote from Effective Java Programming Language Guide


“Learning the art of programming, like most other disciplines, consists of first learning the rules and then learning when to break them.”
― quote from Effective Java Programming Language Guide


“Collection or an appropriate subtype is generally the best return type for a public, sequence- returning method.”
― quote from Effective Java Programming Language Guide


“Writing concurrent programs in Java keeps getting easier, but writing concurrent programs that are correct and fast is as difficult as it ever was.”
― quote from Effective Java Programming Language Guide


“A second advantage of static factory methods is that, unlike constructors, they are not required to create a new object each time they're invoked.”
― quote from Effective Java Programming Language Guide



“If you export a nontrivial interface, you should strongly consider providing a skeletal implementation to go with it. To the extent possible, you should provide the skeletal implementation via default methods on the interface so that all implementors of the interface can make use of it.”
― quote from Effective Java Programming Language Guide


“Implementing a constant interface causes this implementation detail to leak into the class’s exported API. It is of no consequence to the users of a class that the class implements a constant interface. In fact, it may even confuse them. Worse, it represents a commitment: if in a future release the class is modified so that it no longer needs to use the constants, it still must implement the interface to ensure binary compatibility. If a nonfinal class implements a constant interface, all of its subclasses will have their namespaces polluted by the constants in the interface.”
― quote from Effective Java Programming Language Guide


“You can put any element into a collection with a raw type, easily corrupting the collection’s type invariant (as demonstrated by the unsafeAdd method on page 119); you can’t put any ele- ment (other than null) into a Collection<?>.”
― quote from Effective Java Programming Language Guide


“arrays are covariant. This scary-sounding word means simply that if Sub is a subtype of Super, then the array type Sub[] is a subtype of the array type Super[]. Generics, by contrast, are invariant: for any two distinct types Type1 and Type2, List is neither a subtype nor a supertype of List. You might think this means that generics are deficient, but arguably it is arrays that are deficient.”
― quote from Effective Java Programming Language Guide


“A forEach operation that does anything more than present the result of the computation performed by a stream is a “bad smell in code,” as is a lambda that mutates state.”
― quote from Effective Java Programming Language Guide



“streams do not make iteration obsolete”
― quote from Effective Java Programming Language Guide


“premature optimization is the root of all evil. —Donald E. Knuth [”
― quote from Effective Java Programming Language Guide


“In other words, it is about 50 times slower to create and destroy objects with finalizers.”
― quote from Effective Java Programming Language Guide


“In fact, two-thirds of the uses of the close method in the Java libraries were wrong in 2007.”
― quote from Effective Java Programming Language Guide


“There is no way to extend an instantiable class and add a value component while preserving the equals contract, unless you’re willing to forgo the benefits of object-oriented abstraction.”
― quote from Effective Java Programming Language Guide



“Given all the problems associated with Cloneable, new interfaces should not extend it, and new extendable classes should not implement it.”
― quote from Effective Java Programming Language Guide


“It is too early to say whether modules will achieve widespread use outside of the JDK itself. In the meantime, it seems best to avoid them unless you have a compelling need.”
― quote from Effective Java Programming Language Guide


“Builder pattern is more verbose than the telescoping constructor pattern, so it should be used only if there are enough parameters, say, four or more.”
― quote from Effective Java Programming Language Guide


Popular quotes

“Seth approached the dog and let it sniff his hand. A warm tongue caressed his palm, and Seth rubbed the top of the animal’s head. “You’re a good boy,” Seth said in his special voice reserved for babies and animals. “You’re not going to eat me, right?”
― Brandon Mull, quote from Rise of the Evening Star


“Then he remembered Ralph's words--"no point in fighting your war over and over until you get it right.”
― M.L. Stedman, quote from The Light Between Oceans


“Calvin: The more you know, the harder it is to take decisive action.
Once you are informed, you start seeing complexities and shades of gray.
You realize nothing is as clear as it first appears. Ultimately, knowledge is paralyzing.
Being a man of action, I cannot afford to take that risk.

Hobbes: You're ignorant, but at least you act on it.”
― Bill Watterson, quote from The Authoritative Calvin and Hobbes: A Calvin and Hobbes Treasury


“Hmm… I’m having this strange sense of déjà vu, except you were telling me to stay out of your training business, and I told you how weird—” “That’s funny.” Aiden’s full lips twisted into a smirk. “I’m having the same feeling, except I said you should—” “Oh, for the love of baby daimons everywhere, I’m ready to start practice.” I pushed up from the chair.”
― Jennifer L. Armentrout, quote from Pure


“Julian: What's black inside, white outside, and hot?
Jenny: What?
Julian: A wolf in sheep's clothing.
Jenny: Is that what you are?
Julian: Me? No, I'm a wolf in wolf's clothing.”
― L.J. Smith, quote from The Forbidden Game


Interesting books

Daughter of Smoke and Bone
(249.8K)
Daughter of Smoke an...
by Laini Taylor
Baptism of Fire
(23.3K)
Baptism of Fire
by Andrzej Sapkowski
The Lies About Truth
(2K)
The Lies About Truth
by Courtney C. Stevens
The Death of Ivan Ilyich
(62.5K)
The Death of Ivan Il...
by Leo Tolstoy
The Vengekeep Prophecies
(1.2K)
The Vengekeep Prophe...
by Brian Farrey
Permutation City
(5.9K)
Permutation City
by Greg Egan

About BookQuoters

BookQuoters is a community of passionate readers who enjoy sharing the most meaningful, memorable and interesting quotes from great books. As the world communicates more and more via texts, memes and sound bytes, short but profound quotes from books have become more relevant and important. For some of us a quote becomes a mantra, a goal or a philosophy by which we live. For all of us, quotes are a great way to remember a book and to carry with us the author’s best ideas.

We thoughtfully gather quotes from our favorite books, both classic and current, and choose the ones that are most thought-provoking. Each quote represents a book that is interesting, well written and has potential to enhance the reader’s life. We also accept submissions from our visitors and will select the quotes we feel are most appealing to the BookQuoters community.

Founded in 2023, BookQuoters has quickly become a large and vibrant community of people who share an affinity for books. Books are seen by some as a throwback to a previous world; conversely, gleaning the main ideas of a book via a quote or a quick summary is typical of the Information Age but is a habit disdained by some diehard readers. We feel that we have the best of both worlds at BookQuoters; we read books cover-to-cover but offer you some of the highlights. We hope you’ll join us.