Overview
This 5-day, lecture-and-lab course presents object-oriented programming with the Java programming language. Key topics include the Java Development Kit (JDK), Java SE 6, classes, objects, encapsulation, interfaces, inheritance, polymorphism, abstract classes, packages, event-driven programming, graphical user interfaces (GUIs), exception handling, file processing and generic collections. Students create Java applications, understand Java object-oriented programming, learn to use various Java Application Programming Interfaces (APIs) and participate in extensive hands-on laboratory assignments. After taking this course and gaining some practical Java programming experience, students will be prepared to take Java300—Advanced Java Programmers. The course can be customized to the client’s specific needs at no additional charge.
Prerequisites
Introduction
Review of Java syntax and concepts presented in the following chapters of Java How to Program, 7/e:
- Chapter 2—Introduction to Java Applications
- Chapter 3—Introduction to Classes and Objects
- Chapter 4—Control Statements: Part 1
- Chapter 5—Control Statements: Part 2
- Chapter 6—Methods: A Deeper Look
- Chapter 7—Arrays
Classes and Objects: A Deeper Look
- Time Class Case Study
- Controlling Access to Members
- Referring to the Current Object's Members with the this Reference
- Time Class Case Study: Overloaded Constructors
- Default and No-Argument Constructors
- Composition
- Enumerations
- Garbage Collection and Method finalize
- static Class Members
- static Import
- final Instance Variables
- Time Class Case Study: Creating Packages
Object-Oriented Programming: Inheritance
- Superclasses and Subclasses
- protected Members
- Relationship between Superclasses and Subclasses
- Creating and Using a CommissionEmployee Class
- Creating a BasePlusCommissionEmployee Class without Using Inheritance
- Creating a CommissionEmployee – BasePlusCommissionEmployee Inheritance Hierarchy
- CommissionEmployee – BasePlusCommissionEmployee Inheritance Hierarchy Using protected Instance Variables
- CommissionEmployee – BasePlusCommissionEmployee Inheritance Hierarchy Using private Instance Variables
- Constructors in Subclasses
- Software Engineering with Inheritance
Object-Oriented Programming: Polymorphism
- Polymorphism Examples
- Demonstrating Polymorphic Behavior
- Abstract Classes and Methods
- Case Study: Payroll System Using Polymorphism
- Demonstrating Polymorphic Processing, Operator instanceof and Downcasting
- Summary of the Allowed Assignments Between Superclass and Subclass Variables
- final Methods and Classes
- Case Study: Creating and Using Interfaces
- Developing a Payable Hierarchy
- Declaring Constants with Interfaces
- Common Interfaces of the Java API
GUI Components: Part 1
- Simple GUI-Based Input/Output with JOptionPane
- Overview of Swing Components
- Displaying Text and Images in a Window
- Text Fields and an Introduction to Event Handling with Nested Classes
- Common GUI Event Types and Listener Interfaces
- How Event Handling Works
- JButton component
- Buttons That Maintain State
- JCheckBox component
- JRadioButton component
- JComboBox and Using an Anonymous Inner Class for Event Handling
- JList component
- Mouse Event Handling and Adapter Classes
- JPanel Subclass for Drawing with the Mouse
- Layout Managers
- Using Panels to Manage More Complex Layouts
Exception Handling
- Exception-Handling Overview
- Example: Divide by Zero without Exception Handling
- Example: Handling ArithmeticExceptions and InputMismatchExceptions
- When to Use Exception Handling
- Java Exception Hierarchy
- finally Block
- Stack Unwinding
- printStackTrace , getStackTrace and getMessage
- Chained Exceptions
- Declaring New Exception Types
- Assertions
Files and Streams
- Data Hierarchy
- Files and Streams
- Class File
- Sequential-Access Text Files
- Creating a Sequential-Access Text File
- Reading Data from a Sequential-Access Text File
- Updating Sequential-Access Files
- Object Serialization
- Creating a Sequential-Access File Using Object Serialization
- Reading and Deserializing Data from a Sequential-Access File
- Additional java.io Classes
- Opening Files with JFileChooser
Collections
- Collections Overview
- Class Arrays
- Interface Collection and Class Collections
- ArrayList class and Iterators
- LinkedList class
- Collections Algorithms
- Algorithm sort
- Algorithm shuffle
- Algorithms reverse, fill, copy, max and min
- Algorithm binarySearch
- Stack Class of Package java.util
- Class PriorityQueue and Interface Queue
- Sets
- Maps
Price
- $12,995 lecture fee for up to 20 students maximum.
- Client purchases the books, at its own expense, directly from Pearson (the publisher) at the discounted Deitel rate.
- Instructor Travel Reimbursement (if travel is required).
Courses in the Java Programming Curriculum
