Center for Lifelong Engineering Education
Certificate Programs Conferences Custom Courses e-Training M.S. Degree Programs Short Courses
Center for Lifelong Engineering Education The Universtiy of Texas at Austin Cockrell School of Engineering

TOPICS

Event Calendar

Join Mailing List

Search

 

 

Object Oriented Programming in Java

Course # EN04116
Date(s) July 19-23, 2004
Times 8:30 a.m. - 4:30 a.m.
Instructor(s) Charles Richter 
Course Fee(s) Register on or before June 21, 2004 $1,750.00
Register after June 21, 2004 $2,000.00
DIR Registration Fee $1,557.50
CEUs 4.0
View Contact Information, Course Location, Cancellation Policy, Attendance Policy and Hotel Information

Email this page Email this page Contact us today about having this course on-site!
line
This course is aimed at anyone wanting to write applications in Java.
line

Course Overview

This five-day course covers the fundamentals of programming Java. Both the language and some of the standard packages are covered. Numerous exercises and laboratories provide students "hands on" experience with Java. This course emphasizes the development of applications, and only lightly covers applets and graphical user interfaces (GUIs).

Course Outline

Introduction: The "compile once, run many" paradigm. A first Java program. Tools for compiling, interpreting, and debugging Java programs. An outline of the course.

Control Flow Constructs: Javas lexical conventions. Types and type conversion. Implicit conversion and explicit casting. Operators. Control flow statements.

Classes and Objects: The concepts, syntax, and semantics for classes. Instantiating objects. Constructors and initializers. Encapsulation. Static fields and methods.

Specialization: Class specialization through extension (i.e., subclassing). Inheritance of implementation. Calling superclass constructors and methods. The four levels of access (public, protected, package, and private).

Type Promotion and Polymporphism: Overriding methods in subclasses. Type promotion (or "upcasting"). Downcasting and the "instanceof" operator. Polymorphism. How a subclass must obey the superclass contract. Abstract and final classes and methods. The binding of static methods.

Another Look at Classes and Objects: The Object class. Comparing objects for reference and value equality. Parameter passing and object cloning. Inner classes.

Arrays and Strings: Arrays and strings as objects. How to create instances of each. Strings versus Stringbuffers.

Interfaces: Interface specialization through the definition and implementation of interfaces. The use of classes versus interfaces. Why Java permits multiple inheritance of interface but only single inheritance of implementation. Using interfaces for role-based design.

Basic Data Structures: The data structure classes in the java.util package (Vector, BitSet, Stack, Hashtable, and the Java 1.2 collection classes and interfaces). Using Iterators or Enumerations to iterate. Arrays versus dynamic arrays. Linked lists versus dynamic arrays. Tree sets and maps versus hash sets and maps.

Packages: The package as a mechanism for name scoping and access control. Defining and importing packages. A brief summary of the standard Java packages.

The I/O Packages: The I/O classes in the java.io package. Examples using the byte I/O (input stream and output stream) and character I/O (reader and writer) classes.

Exceptions: Defining exceptions. Checked versus unchecked exceptions. Throwing exceptions. The try-catch and try-catch-finally idioms. How to handle an exception. Throwing exceptions in overridden methods. Using exception information.

Threads: The concept of threads (versus processes). Creating Java threads. Java mechanisms for the synchronization of access to shared objects. Thread groups.

Applets: An introduction to writing applets. Restrictions on applets. How to turn an application into an applet.

The Abstract Window Toolkit: An overview of the Abstract Window Toolkit (AWT) and the Swing components. Containers and components. Layout managers. Events and listeners. Some simple examples of AWT features.

Design Patterns: An introduction to design patterns. Three design patterns, including the Observer pattern, and their implementations in Java.

The Class Class: The Class metaclass in Java. An introduction to Java's reflection facilities.

line

Contact Information
Theresa Dobbs
Sr. Manager
tdobbs@mail.utexas.edu
(512) 471-4875

Course Location
J. J. Pickle Research Campus
Commons Building, Room 1.130
10100 Burnet Road
Austin, TX 78758
Telephone: (512) 471-5898
Fax: (512) 471-3679

For a map and information on
parking, visit this link.

Attendance Policy
A 90% attendance rate is required in order to earn Continuing Education Units (CEUs) and certificates of completion.

Cancellation Policy
A full refund, less a $100.00 processing fee, will be given for all cancellations or transfers if notification is received on or before two weeks prior to the beginning of the course. Refunds will not be given for cancellations received after this date. Substitutions may be made anytime prior to the first day of class. The CLEE programs are subject to cancellation if too few people enroll, in which case a full refund will be given.

Hotel Information

 

Center for Lifelong Engineering Education The Universtiy of Texas at Austin College of Engineering