Read more
About the Author. Foreword. Acknowledgments. Introduction. Who Is This Book For? What This Book Is Not How to Use This Book Exercises Conventions Used in This Book An Agile Overview. What Is “Agile?” What Is Java? Why OO? What Is an Object? What Are Classes? Why UML? What Is Inheritance? Why Test-Driven Development? Setting Up. Software You'll Need Does It Work? Compiling Hello World Executing Hello World Still Stuck? Lesson 1: Getting Started. Testing Design A Simple Test JUnit Adding a Test Creating a Student Creating the Student Class Constructors Local Variables Returning a Value from a Method Assertions Instance Variables Summarizing the Test Refactoring this private Naming Conventions Whitespace Exercises Lesson 2: Java Basics. CourseSession Enrolling Students int Initialization Default Constructors Suites The SDK and java.util.ArrayList Adding Objects Incremental Refactoring Objects in Memory Packages and the import Statement The java.lang Package The Default Package and the package Statement The setup Method More Refactoring Class Constants Dates Overload Constructors Deprecation Warnings Refactoring Creating Dates with Calendar Comments Javadoc Comments Exercises Lesson 3: Strings and Packages. Characters and Strings Strings StringBuilder System Properties Looping Through All Students Single-Responsibility Principle Refactoring System.out Using System.out Refactoring Package Structure Access Modifiers Using Ant Exercises Lesson 4: Class Methods and Fields. Class Methods Class Variables Operating on Class Variables with Class Methods Static Import Incrementing Factory Methods Simple Design Static Dangers Using Statics: Various Notes Jeff's Rule of Statics Booleans ...