UMBC Training Centers logo

Oracle Certified Professional Java Programmer


Course Description | Outline | IT Certification Bootcamps


This course teaches programming in the Java language -- i.e. the Java Standard Edition platform. It focuses on procedural and structured coding skills first, and then offers meticulous, in-depth coverage of object-oriented concepts and how to apply them to Java software design and development. The course then moves from these basic skills into key parts of the Java SE Core API, including collections, logging, streams, and object serialization. Automated unit-testing practices using JUnit are introduced.

This course also provides advanced training in developing software using the Java Platform, Standard Edition, or Java SE.General-purpose topics are covered: using and building generic types, writing multi-threaded applications, the Reflection API and annotations, and network programming using sockets. It combines nicely with various other courses in the Java curriculum, each of which is also "advanced Java" of some sort: JDBC, secure coding, Swing GUI programming, design patterns, and so on.

This revision of the course targets the 6.0 version of the Java language and Core API; but it is equally applicable to Java 5 and groups looking for Java training who know they'll be using Java 5 are encouraged to use this course.

Learning Objectives:
* Chiefly, learn to program effectively in the Java language.
* Understand the Java software architecture, and the design decisions which make Java software portable, efficient, secure and robust.
* Learn how to configure a simple Java development environment.
* Know the grammar, data types and flow control constructs of the Java language for simple procedural programming.
* Understand Java as a purely object-oriented language, and implement software as systems of classes.
* Implement and use inheritance and polymorphism, including interfaces and abstract classes.
* Design appropriate exception handling into Java methods, and use the logging API appropriately.
* Understand the structure of streams in Java, and learn how to use streams to manage file I/O.
* Learn how to use Java Serialization to internalize and externalize potentially complex graphs of objects.
* Build unit tests for Java classes using JUnit.

* Make effective use of Java generic types.
* Write multi-threaded Java applications.
* Use the Reflection API for highly generic tasks, discovery, or code-generation.
* Use standard annotations and develop custom annotations to express meta-data in Java source files.
* Communicate between processes using network sockets.

Target Student

This course is intended for programmers with experience in languages other than Java, but who may or may not have any previous Java experience.


No prior Java experience is required, but students must be experienced programmers in another third-generation (high-level) language. A good understanding of object-oriented programming concepts required. Students who do not meet the pre-requisites but wish to learn the basics of Java programming should start with our Oracle Certified Associate Java Programmer course.


10 days (with an optional 11th day for the certification exam)


E-mail or call (443) 692-6599:
  • if you have any questions about this course,
  • to be notified when this course and any closely related courses are scheduled for open enrollment,
  • to request a quote for group training at your location or ours.