PART 1 Object-Orientation and Java Fundamentals CHAPTER 1 Object-Oriented System Development Understanding oo develoment Object-Oriented Programming Object-Oriented Analysis and Design Understanding Object-Oriented Concepts Objects,attributes,and Methods Object Iteractions and Messages Encapsulation and Information Hiding Classes,Instances,and associations Inheritance and Polymorphism Recognizing The Benefits Of oo Development Objects Are More Natural Classes of Objects Can Be Reused Learning oo Development Introducing Three-Tier Design Part1:Object-Orientation and Java Fundamentals Part2:Defining Problem Domain Classes Part3:Defining GUI Classes Part4:Defining Data Access Classes Part5:Deploying the Three-Tier Application Summary Key Terms Review Questions Discussion Questions Projects CHAPTER 2 Java Programming Fundamentals Intoducing Java Building A Java Class Using Java Variables And Data Types Declaring and Initializing Variables Changing Data Types Using Constants Using Reference Variables Creating a Java Class to Demontrate Variables Computing With Java Writing Decision-Making Statements writing if Statements Using the Conditional Operator Writing swith Statements Writing Loops Writing While Loops Writing do loops Writing for Loops Writing Nested Loops Declaring And Accessing Arrays Using One-Dimensional Arrays Using Multidimensional Arrays Summary Key Terms Review Questions Discussion Questions Projects CHAPTER 3 Java Programming With Supplied Classes Using The Packages And Classes Supplied With Java Using The String Class Creating A String Array Using The Vector Class Working With Dates Using Wrapper Classes Converting Primitive to Wrapper and Back Converting String to Primitive and Back Converting String to Wrapper and Back Using The Applet Class Writing a Simple Applet Controlling Color and Font Summary Key Terms Review Questions Discussion Questions Projects CHAPTER 4 Object-Oriented analysis and Design in a Nutshell Understanding Ooa And Ood Understanding the Unified Modeling Language Creating and Interpreting the Use Case Diagram Creating and Interpreting the Class Diagram Creating and Interpreting a Sequence Diagram Using Three-Tier Design In Oo Development Introducing The Bradshaw Marina Case Study Exploring the Background of Bradshaw Marina Identifying Bradshaw Use Cases and Scenarios Identifying Bradshaw Problem Domain Classes Creating a Bradshaw Sequence Diagram Summary Key Terms Review Questions Discussion Questions Projects PART 2 Defining Problem Domain Classes CHAPTER 5 Writing a Problem Domain Clasww Defintion Naming Conventions Developing A Pd Class Definition Class Definition Structure Defining Attributes Writing Methods Testing A Pd Class Creating an Instance Creating Multiple Instances Writing A Constructor Method Writing A Tellaboutself method Summary Key Terms Review Questions Discussion Questions Projects CHAPTER 6 More About Problem Domain Classes Writing A definition For The Slip Class Writing Custom Methods Formatting Output Using NumberFormat and DecimalFormat Classes Using Escape Sequences Using Static Variables And Methods Over Loading Methods Overloding a Constructor Overloding a Custom Method Working With Exceptions Data Validation for SlipId Data validation for Width Catching Exceptions Summary Key Terms Review Questions Discussion Questions Projects CHAPTER 7 Generalization/Specialization and Inheritance Implementing The Boat Generalization/Specialization Hierarchy Testing the Boat Superclass Using the Extends Key word to Create the Sailboat Subclass Testing the Sailboat Subclass Adding a Secong Subclass-Powerboat Understanding Abstact And Final Classes Using Abstract Classes Using Final Classes Overriding a Superclass Method Adding and Overriding the tellAboutSelf Method Overriding and Invoking a superclass Method testing Two Method-Overriding Approaches Overriding,Polymrophism,and Dynamic Binding Understanding Private Versus Protected Access Summary Key Terms Review Questions Discussion Questions Projects CHAPTER 8 Additional Inheritance Concepts and Techniques Introducing The Inital Lease Class Adding An Abstrat Method To Lease Implementing The Annuallese Subclass Implementing The Dailylease Subclass Testing The Annuallease And Dailylease Class Understanding And Using Java Iterfaces Creating a Java Interface implementing More Than One Interface Testing the Complete Interface Example Using Custom Exceptions Testing the LeasepaymentException Handling Payments as a Batch Understanding the Object Class And Inheritance Summary Key Terms Review Questions Discussion Questions Projects CHAPTER 9 Implementing Association Relationships Reviewing Bradshaw Marina's Class Diagram Associating Customer With Boat:One-To-One Association ralationship Modifying the Customer Class Modifying the Boat Class Adding Capability To The Boat Class Associating Dock And Slip:A One-To-Many association Relationship Introducing the Dock Class Associating the Slip Class With Dock Testing the'Dock Contains Slips'Association Relationship Adding the Boat and Customer Classes to the Example Creating And Using An Association Class-Lease Summary Key Terms Review Questions Discussion Questions Projects PART 3 Defining GUI Classes CHAPTER 10 Writing Graphical User Interfaces Understanding Java's Gui Classes Using Awt Classes Creating a Window With a Button Using Layout Managers Handing Java Events Using Multiple GUI Components Converting An Application To An Applet Using Swing Clsses Converting an AWT GUI to Swing Adding Drop-down Menus Converting a Swing Appliction to an Applet Summary Key Terms Review Questions Discussion Questions Projects CHAPTER 11 A GUI Interacting With a Problem Domain Class Adding A New Customer Creating the Logo Panel Creating the Center Panel Creating the Lower Panel Handing Event Using a Dialog Box Finding A Customer Creating a Vector of Customers Creating a Verctor of Customer Names Using the JList Class Adding Text Fields Handing Events Adding A Boat Creating Panels Using CardLayout Using Radio Buttons Creating the CailboatPanel Creating the PowerboutPanel Registering for Events Handing Events Writing the clearForm Method Writing the addBoatMethod Summary Key Terms Review Questions Discussion Questions Projects CHAPTER 12 Designing Multiwindow Applications Navigaging Multiple Windows Simulating a Customer Database Designing the Maing Menu Navigating A Pd Association A Pd Association relationship Simulating a Customer and Bout Database Adding a Customer and Boat Finding a Customer and Boat Summary Key Terms Review Questions Discussion Questions Projects CHAPTER 13 Using an Integrated Development Environment Understanding Rapid Application Development(Red) Exploring The And Benefits Of An Id Intorducing the Benefits of Program Management Tools Intorducing the Benefits of Souce Editor Intorducing the Benefits of GUI Editor Intorducing the Benefits of Compilation and Execution Tools Intorducing the Benefits of the Debugging Tool Intorducing the Benefits of the Documentation Generator Installing the Forte Ide Learning The Forte Basics-A Quick Tour Understanding the Main Window Understanding the Workspaces Using Forte To create A Simple Guiprogram Creating a New File for the Example Program Designing the Form for the Example Program Making the Button in the Example Program Work Compiling and Executing the Example Program Examining the Code Generated by the GUI Editor Using Forte For A Bradshaw marina Gui application Creating a Project for the Bradshaw Marina GUI Application Creating a New File for the Bradshaw Marina GUI Application Designing the Form for the Brashaw Marina GUI Application Making the Button in the Brashaw Marina GUI Application Work Compiling and Executing the Bradshaw Marina GUI Application Using the Debugger Getting Started with the Debugger Setting Breakpoints and Establishing Watch Variables Finding and Correcting Program Errors Stepping Through a Program Exporing Other Debugger Options Generating Javadoc Documentation Summary Key Terms Review Questions Discussion Questions Projects PART 4 Defining Data Access Classes CHAPTER 14 Designing Data Access Classes Making Objects Persistent Designing A Data Access Class Data Access Methods Communicating With A Data Access Class Understanding Java I/O Commuication Persistence With a Sequential File Testing CustomerDA for a Sequential File Implementation Implementing Persistence With a Random Access File Implementing Persistence With Object Serialization Designing A Realtional Database Understanding the Structured Query Language(SQL) Understanding the java.sql Package Implementing Persistence With a Database Testing CustomerDa for a Database Implementation Summary Key Terms Review Questions Discussion Questions Projects CHAPTER 15 Creating More Complex Database Applications Implementing A One-To-One Relationship In A Database Application Understanding the Tables in CustomerAndBoatDatabase Using SQL to Join Tables in the Database Establishing a Common Connection to CustomerAndDatabase Modifying the Customer Problem Domin Class Introducing the BoatDA Class Modifying the Boat Class to Work With BoatDA Modifying the CustomerDA Class Testing the New CustomerAndBoatDatabase Application Implementing A One-To-Many Relationship In A Database Application Understanding the Tables in DockAndSlipDatabase Establishing a Common Connection to DockAndSlipDatabase Modifying the Dock and Slip Classes Introducing the DockDA Class Testing the DockAndSlipDatabase Application Implementing An Association Class In A Database Application Understanding the Tables in CustomerLeaseSlipDatabase Establishing a Connection to CustomerLeaseSlipDatabase Modifying the Customer Class Modifying the Lease and Annualease Classes Modifying the Slip Class Introducing the SlipDA Class Introducing the AnnualLeaseDA Class Testing the CustomerLeaseSlipDatabase Application Summary Key Terms Review Questions Discussion Questions Projects PART 5 Deploying the Three-Tier Application CHAPTER 16 Combining the Three Tiers:GUI,Problem Domain,and Data Access Class Revisiting Three-Tier Design Three-tier Design and the Development Process Combining A Gui,One Pd Class,And One Da Class The Customer Class in Chapter11 and 12 The Customer Class in Chapter14 Reviewing the CustomerDA Class Using Multiple Guis And Adding An Instance To The Database Reviewing the MainMenu GUI Reviewing the AddCustomer GUI Updating the FindCustomer GUI for Example 2 Using Gui With Multiple Problem Domain Class Reviewing the Boat and Customer Classes With an Association Relationship Modifying the CustomerDA Class to Associate With Boats Introducing the FindCustomerAndBoat GUI Summary Key Terms Review Questions Discussion Questions Projects CHAPTER 17 Deploying Java Applications on the Web Understanding The Client-Server Model Of Computing Examining a Typical client-Server Exchange Creating the User Interface:Thin-client Applications Exploring Html:A Simple Example Using HTML Tage Using HTMLto Create an Input Form Writing A Servlet To Process The Form Examining the doPost()Method Installing The Javaserver Web Development Kit(Jswdk) Organizing Files for the Example Web Application Installing the Example Programs Compiling the Example Programs Using Javascript To Valiate An Html Input Form Developing A Web Application For Bradshaw Marina Modifying the Bradshaw Marina PD and DA Class Using HTML to Create the Welcome Page Using HTML to Create the Login Page Writing a Servlet to Complete the Login Request Introducing Java Server Pages Using a Java Server Page to Return Dynamic content Using a Servlet to Update the Bradshaw Marina Database Using Java Server Pages to Complete the Application Exploring Other Technologies For Web Application Development Summary Key Terms Review Questions Discussion Questions Projects Glossary