Consulting Training Blog Careers About Us Contact Us

Developing and Testing OO Applications with Java Training

Course ID: WAS1219
Duration: 5 Days

Upcoming Classes

Sorry, nothing scheduled right now. Click the Get Notified button below to be alerted when a class is scheduled.

Get Notified

On Site/Private

Can't find a class that fits right for you? Contact us to inquire about scheduling your own private class

Contact Us


Move beyond the fundamental skills of Java syntax and logic flow into concepts of design flexible and maintainable applications with interfaces. Create Graphical User Interfaces (GUI) for stand-alone applications and applets using Swing. Learn to manipulate and manage data using Java's Collection Application Programming Interface (API). Create threads of execution for multithreaded applications Create simple distributed object. systems through Java's Networking API and Java Remote Method Invocation (RMI).


Bring This Course To You

For groups of 5 or more, let Intertech bring this course to your location. Customized versions tailored towards your objectives are also available.

Learn More

Learning Objectives

  • Describe Java Virtual Machine (JVM) memory allocation and garbage collection
  • Understand how to override the finalize() method
  • Write code to access system properties
  • Use arrays to store data
  • Create an abstract class and use inheritance to develop a class hierarchy
  • Override inherited methods
  • Implicitly utilize inherited methods and constructors
  • Utilize inherited methods and constructors through use of the keyword: super
  • Define and use interfaces
  • Use the final keyword to define constants
  • Use the Collection API to manage and store objects
  • Create and use data streams
  • Use the file class
  • Make an object persist through serialization
  • Define a custom exception
  • State the difference between run-time and checked exceptions
  • Architect methods so that exception handling takes advantage of throwing exceptions
  • Understand how to handle exceptions without disrupting your existing program logic
  • Create a basic graphical user interface
  • Describe Java's event-handling model
  • Create an anonymous inner class to refine event handling
  • Augment an existing graphical user interface to run in a Web browser as an applet
  • Define a class that implements the runnable interface
  • Launch and control separate threads of execution
  • Access a server from a client application to retrieve information
  • Describe and use the Networking API and RMI in Java
  • Code RMI interfaces
  • Use the RMI compiler (rmic) and the rmiregistry
  • Use the RMI lookup facilities
  • Convert an application into a client/server application¬†


Familiarity with software development in general is helpful.

Course Outline


  • History of Java
  • Goals of Java
  • Java Virtual Machine
  • Garbage Collection
  • Source File Layout

Java Basics

  • Semicolon and White Spaces
  • Blocks
  • Keywords
  • Primitive Data Types
  • Identifier
  • Variables
  • Literals
  • Arithmetic Operators
  • Bitwise Operator
  • Assignment Operators
  • Miscellaneous Operators
  • Scope of a Variable
  • Arrays
  • Multidimensional Arrays
  • Reading from the Keyboard

Branching and Looping

  • Conditions
  • The if Statement
  • The if . . . else Statement
  • Logical Operators and if...else Statement
  • The switch Statement
  • The while Statement
  • The do . . . while Statement
  • The for loop
  • Break and Continue


  • Declaring Arrays
  • Creating Arrays
  • Accessing Arrays
  • Initializing Arrays
  • Multidimensional Arrays
  • Copying Arrays


  • Object-Oriented Programming
  • Methods
  • Overloading
  • Creating an Instance of a Class
  • Constructors
  • Inheritance
  • The super Keyword
  • The this Keyword
  • Overriding
  • Using == vs. equals()
  • The toString() Method
  • Static Initializers
  • Access Modifiers
  • Creating Constructors/Methods

Advanced Class Concepts

  • Inner Classes/Nested Classes
  • Abstract Classes
  • Interfaces


  • Vectors
  • Linked List
  • Array List
  • Hash Set
  • Tree Set
  • Map Class
  • Stack Class

Stream I/O

  • File I/O
  • The File Class
  • Input Stream
  • Output Stream
  • DataInputStream
  • DataOutputStream
  • FileInputStream
  • FileOutputStream
  • Reader and Writer


  • What is Exception?
  • Benefits
  • How to work with exception
  • The try . . . catch . . . finally Statement
  • Flow of Program Control
  • Checked Exceptions
  • Unchecked Exceptions
  • Catching Multiple Exceptions
  • Rethrowing Exceptions
  • Exception thrown by a Method
  • The Exception Class
  • Creating your Own Exceptions


  • Foundations of AWT
  • Common Layout Manager

AWT Components

  • The Component Class
  • Containers and Components


  • What is an Applet?
  • Applet vs. Application
  • Applet Security
  • Writing an Applet
  • Lifecycle of an Applet
  • First Applet
  • Appletviewer
  • Applet tags
  • Applet and AWT


  • Attacks and Dangers
  • Security Model
  • Class Loader
  • Security Manager
  • Policy Files
  • Permission Class
  • Message Digest
  • Code Signing
  • Encryption
  • Authentication
  • Certificate Management


  • Thread Scheduling
  • Synchronization
  • wait And notify


  • URL Connections
  • Browser Example
  • InetAddress
  • Socket Classes
  • Simple Clients and Servers
  • Multithreaded Servers
  • UDP Sockets
  • Serialization
  • Externalization
  • Remote Method Invocation
  • Steps to implement RMI
  • RMI - Remote Object Registry
  • RMI and Applets

Free Resources from Intertech

Complete Guide to Becoming a Full Stack Developer

Free Book Chapter: Spring Web

Free Whitepaper: Spring MVC Command Beans