1.1 The Core: Objects as Small and Active Entities1.2 Developing with Objects1.2.1 Effective Code Editing in Eclipse1.2.2 Refactoring: Incremental Design Improvements1.2.3 The Crucial Role of Naming1.3 Fields1.3.1 Data Structures1.3.2 Collaborators1.3.3 Properties1.3.4 Flags and Configuration1.3.5 Abstract State1.3.6 Caches1.3.7 Data Shared Between Methods1.3.8 Static Fields1.4 Methods1.4.1 An Object-Oriented View on Methods1.4.2 Method Overloading1.4.3 Service Provider1.4.4 Convenience Method1.4.5 Processing Step1.4.6 Explanatory Methods1.4.7 Events and Callbacks1.4.8 Reused Functionality1.4.9 Template Method1.4.10 Delegated to Subclass1.4.11 Extending Inherited Behavior1.4.12 Factory Methods1.4.13 Identity, Equality, and Hashing1.4.14 Refused Bequest