IT Training Courses
Microsoft Gold IT Training Partner
800-326-1044

J-510 - Java Programming

Course J-510


Price: $2,475.00
Software Assurance Value: Not Eligible       
Duration: 5 Days




This course is currently only available on a request basis. Request this class now.





 Course Description

SQLSoft Course J-510, JAVA PROGRAMMING

Table of Contents

Introduction
Audience
At Course Completion
Prerequisites
Certified Professional Exams
Student Materials
Course Outline


Introduction

Intensive and hands-on, this 5-day 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.

Return to Top


Audience

Programmers moving to object-oriented programming using Java.

Return to Top


At Course Completion

At the end of this course, the student will be able to:

  • Describe the JSE JDK/SDK architecture and its implementation.
  • Create and use Java applications.
  • Code the basic Java language syntax and structures.
  • Describe the fundamental concepts of object-oriented programming, especially Inheritance, Encapsulation, Abstraction, and Polymorphism.
  • Code and use classes, attributes and methods.
  • Code and use instance-level and class-level attributes and methods.
  • Code and invoke Constructor methods.
  • Use Java's primitive datatypes and wrapper classes.
  • Use Java API classes such as String and Array.
  • Find and read documentation for Java's classes.
  • Generate documentation for coded classes.
  • Understand the overloading and overriding of methods.
  • Code and use abstract classes, interfaces and generics.
  • Create and import Packages.
  • Use access modifiers to control the availablility of classes, attributes and methods.
  • Define and overide CLASSPATH.
  • Create and use three types of Inner Classes.
  • Create, use and try/catch Java Exceptions.
  • Create GUIs (Graphical User Interfaces).
  • Create and use SWING components, containers, events, and Layout Managers.
  • Use Input and Output Streams for handling file I/O and network I/O.
  • Code and use the Java Collections Framework, including Sets, Lists, Queues, Hashes and Maps.
  • Code and use Threads while understanding their issues.
  • Create synchronized code and lock objects.
  • Use JDBC and SQL to access databases.
  • Connect to remote databases.
  • Use the Connection, Statement, and ResultSet objects.
  • Describe the three-tiered JEE architecture and its components.

Return to Top


Prerequisites

Before attending this course, students must have:

  • Professional programming experience.
  • Knowledge of Object-Oriented concepts is helpful.

Return to Top


Certified Professional Exams

This course will help the student prepare for the following Certified Professional exams:

  • Sun Certified Programmer for the Java2 Platform 5.0 Sun Exam: CX-310-055

Return to Top


Student Materials

The student kit includes a comprehensive workbook and other necessary materials for this class.

Return to Top


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

Return to Top