Skip to content

Latest commit

 

History

History
38 lines (30 loc) · 1.97 KB

File metadata and controls

38 lines (30 loc) · 1.97 KB

Effective Java

This project contains examples, tests, and benchmarks for my YouTube series on Effective Java, Third Edition. The tests can be run with mvn test or any IDE with JUnit 5 integration. To run the benchmarks:

mvn package
java -jar target/benchmarks.jar

Related links:

Creating and destroying objects

  • Item 1: Consider static factory methods instead of constructors - examples
  • Item 2: Consider a builder when faced with many constructor parameters - examples
  • Items 3-5 - examples:
    • Enforce the singleton property with a private constructor or an enum type
    • Enforce noninstantiability with a private constructor
    • Prefer dependency injection to hardwiring resources
  • Item 6: Avoid creating unnecessary objects - benchmark

Methods

  • Item 50: Make defensive copies when needed - example and tests