| Course Description | |
| Intensive and hands-on, the course emphasizes becoming productive quickly as a Java application developer. This course quickly covers the Java 5.0 language syntax and then moves into the object-oriented features of the language. Students will then use several of the provided API packages, such as I/O streams, collections, Swing GUI programming, threads, and accessing a database with JDBC. The course ends with a chapter on performance tuning with hints and best practices for writing efficient applications. Appendices on sockets, regular expressions and J2EE are also available for further study.
Course Length: 5 Days Course Tuition: $1690 (US) |
|
| Prerequisites | |
| Professional programming experience in C, C++ or C# is required. Knowledge of Object-Oriented concepts is required. | |
| Course Outline |
|
• Getting Started with J2SE What is Java? How to Get Java A First Java Program Compiling and Interpreting Applications The JDK Directory Structure • Language Fundamentals A Java Program If Statements Switch Statements Loop Statements Syntax Details Primitive Datatypes Variables Expressions in Java Strings Arrays Enhanced for Loop • Objects and Classes Defining a Class Creating an Object Instance Data and Class Data Methods Constructors Access Modifiers Encapsulation • Using Java Objects Printing to the Console printf Format Strings StringBuilder and StringBuffer Methods and Messages toString Parameter Passing Comparing and Identifying Objects Destroying Objects Using the Primitive-Type Wrapper Classes Autoboxing • Inheritance in Java Inheritance Inheritance in Java Casting Method Overriding Polymorphism super The Object Class • Advanced Inheritance and Language Constructs Enumerated Types - Pre-Java 5.0 Enumerated Types Today More Enumerated Types Abstract Classes Interfaces Using Interfaces Comparable Collections Generics • Packages Packages The import Statement Static Imports CLASSPATH and Import Defining Packages Package Scope • Exception Handling Exceptions Overview Catching Exceptions The finally Block Exception Methods Declaring Exceptions Defining and Throwing Exceptions Errors and RuntimeExceptions Assertions • Input/Output Streams Overview of Streams Bytes vs. Characters Converting Byte Streams to Character Streams File Object Binary Input and Output PrintWriter Class Reading and Writing Objects Basic and Filtered Streams • Core Collection Classes The Collections Framework The Set Interface Set Implementation Classes The List Interface List Implementation Classes The Queue Interface Queue Implementation Classes The Map Interface Map Implementation Classes • Collection Sorting and Tuning Using Java 5.0 Features with Collections Sorting with Comparable Sorting with Comparator Sorting Lists and Arrays Collections Utility Methods Tuning ArrayList Tuning HashMap and HashSet • Inner Classes Inner Classes Member Classes Local Classes Anonymous Classes Instance Initializers Static Nested Classes |
• Introduction to Swing AWT and Swing Displaying a Window GUI Programming in Java Handling Events Arranging Components A Scrollable Component Configuring Components Menus Using the JfileChooser • Swing Events and Layout Managers The Java Event Delegation Model Action Events List Selection Events Mouse Events Layout Managers BorderLayout FlowLayout GridLayout BoxLayout Box JtabbedPane • Introduction to JDBC The JDBC Connectivity Model Database Programming Connecting to the Database Creating a SQL Query Getting the Results Updating Database Data Finishing Up • JDBC SQL Programming Error Checking and the SQLException Class The SQLWarning Class JDBC Types Executing SQL Queries ResultSetMetaData Executing SQL Updates Using a PreparedStatement Parameterized Statements Stored Procedures Transaction Management • Introduction to Threads Non-Threaded Applications Threaded Applications Creating Threads Thread States Runnable Threads Coordinating Threads Interrupting Threads Runnable Interface ThreadGroups • Thread Synchronization and Concurrency Race Conditions Synchronized Methods Deadlocks Synchronized Blocks Thread Communication - wait() Thread Communication - notify() Java 5.0 Concurrency Improvements Thread-Aware Collections Executor Callable • Java Performance Tuning Is Java Slow? Don't Optimize Until You Profile HotSpot Virtual Machine Garbage Collection Concepts Garbage Collection Generations Garbage Collection in Java 5.0 Object Creation String, StringBuffer, and StringBuilder Synchronized Inline methods Tuning Collections • Appendix A - Networking with Sockets Clients and Servers Ports, Addresses, and Protocols The Socket Class Communication Using I/O Servers The ServerSocket Class Concurrent Servers The URL Class The URLConnection Class • Appendix B - Regular Expressions Pattern Matching and Regular Expressions Regular Expressions in Java Regular Expression Syntax Special Characters Quantifiers Assertions The Pattern Class The Matcher Class Capturing Groups • Appendix C - J2EE Overview Introduction to J2EE J2SE Building Blocks Servlets, JSPs, and Web Applications Web Services Enterprise JavaBeans Additional J2EE APIs J2EE Clients The J2EE Platform Contact us for course schedules or more information. |


