Advanced Java™ Training Course

Training » All Courses » Java » Advanced Java™

Course Summary

Advanced Java™ Training course provides you with advanced skills for programming in Java language.

This course delves deeper into the data structures, file input and output features, exception handing, object oriented design and analysis, object serialization, database connectivity with JDBC, multi-threaded programming, and networking capabilities of Java.

Upon completion, you will be able to understand, design, and develop complex Java-based applications.

[top] Duration

3 days.

[top] Objectives

Upon successful completion of Advanced Java™ Training course, you will be able to:

  • Use reflection to examine objects at runtime and properly compare objects for equality.
  • Handle errors in your program by writing exception handlers.
  • Create and manipulate arrays and collections.
  • Read and write files using the java.io package.
  • Serialize objects using object serialization.
  • Write multi-threaded programs and synchronize threads.
  • Access data from relational databases using JDBC. Perform basic network communication using sockets.

[top] Audience

You should take Advanced Java™ Training course if you are interested in learning more about the Java programming language in order to learn advanced programming techniques and concepts.

[top] Prerequisites

To succeed fully in Advanced Java™ Training, you should be familiar and comfortable with basic Java programming concepts: Java syntax and object-oriented programming (OOP) in Java. These topics are covered in our Fundamentals of Java™ Training course.

[top] Instructors

Photo
Adam Breindel brings over 10 years of successes working with cutting-edge technology for small startups as well as major players in the travel, media/entertainment, financial, productivity, and consulting industries.

In addition to web sites, GUI applications, and mobile device software, Adam has also built high-volume middleware for one of the world's largest banks, and produced a new, modern integration to a 1960s-vintage mainframe app for one of the world's largest airlines.

Adam focuses on designing and coding systems in a way that yields predictable results, leverages best practices and high-productivity tools, minimizes excess code, and is fun to do. He has also spoken at tech conferencs, written articles and skill assessments, and produced an open source tool for software development. Adam has enjoyed teaching large and small groups, covering topics from nuts-and-bolts Java programming to merging ideal process with real-world constraints in an organization. More about Adam Breindel...
Photo

Aleksandar (Saša) Gargenta is the technology brains at Marakana. Always on top of the latest in software, Aleksandar is the company's radar for technology that matters. His latest ventures are perfecting Marakana's Android Internals and Security courses.

Phew. And if that's not enough, he's also the chief architect of Marakana Spark, the on-demand software platform that powers marakana.com and a number of other training companies. As an instructor he's taught hundreds of classes for everyone from Apple to Disney, from NASA to the Department of Defense.

In his spare time Aleksandar runs the San Francisco Java, Android, and HTML5 User Groups with over three thousand members across the three groups.

Aleksandar holds a bachelor’s degree in Mathematics and Computer Science from the University of Waterloo. He is also a father, photographer, hiker, and a race-car driver :-)

More about Aleksandar Gargenta...
Photo

Marko founded Marakana back in 2001 to help underprivileged youth, minorities, and inner-city kids learn web technologies and get ahead in life. So Marakana emerged with goal of helping people get better at what they do professionally, focused on open source software training.

Learning Android by O'Reilly Marko is the developer of Marakana Android Training series. He has taught Android for companies such as Sony-Ericsson, Qualcomm, Ericsson Canada, and many others. Marko is a co-founder of San Francisco Android Users Group and regularly teaches Android Bootcamp at Marakana.

Marko is author of Learning Android book published by O'Reilly Media. This book is based on Android Bootcamp and incorporates best learning practices for new developers to start creating applications for this exciting open source mobile platform.

Marko is also the co-chair of Android Open, an O'Reilly conference focusing on Android ecosystem.

In 2006 Marko Gargenta published "PHP and MySQL By Example", a collection on PHP examples. The book was published by Prentice Hall, world's largest technology publisher and has been also translated to Spanish.

Marko Gargenta obtained his Bachelor of Mathematics Degree from University of Waterloo (Canada's MIT) and has been developing in Java since 1996. He lives in San Francisco, California.

More about Marko Gargenta...

[top] Outline


Examination Concepts

  • Determining an Object's Type
  • Using the instanceof Operator
  • Using the Class.getName() Method
  • Reflection
  • Comparing Objects for Equality
  • Converting Objects to strings and integers (hash codes)
  • Sorting Objects

Exception Handling

  • Overview of Exceptions
  • Following the Control Flow of an Exception Handler
  • Writing Exception Handlers
  • Checked vs. unchecked exceptions vs. errors
  • Defining custom exceptions
  • Nesting exceptions

Data Structures

  • Creating and manipulating Arrays
  • Collections
  • Choosing a Collection
  • Working with Collections
  • Manipulating Lists, Sets, Maps
  • Understanding Java 5 Generics in Collections

I/O

  • Overview of the java.io Package
  • Working with the File Class
  • Identifying Input and Output Streams
  • Identifying Readers and Writers
  • Reading Data from a File
  • Writing Data to a File
  • Reading and Writing Objects
  • Serializing an Object

Multi-Threaded Programming

  • Overview of Threads
  • Observing a Computer's Processes
  • Observing a Multi-Threaded Program
  • Using Threads
  • Deciding Between Daemon and Non-Daemon Threads
  • Creating a Multi-Threaded Program
  • Thread Synchronization
  • The Producer/Consumer Problem

JDBC

  • Overview of SQL Language
  • Overview of JDBC and its drivers
  • JDBC API: connections, statements, result sets, metadata
  • Using JDBC: updates, queries

Basic Networking

  • Overview of Networking
  • Networking Concepts
  • Identifying Your Computer's IP Address
  • Using the InetAddress Class
  • Sockets
  • Implementing the Client Side of a Socket
  • Implementing the Server Side of a Socket
  • Developing a multi-threaded Server

Design Patterns

  • What are Design Patterns?
  • Singleton, Factory Method, Abstract Factory
  • Adapter, Composite, Decorator
  • Chain of Responsibility, Observer / Publish-Subscribe, Strategy, Template
  • Data Access Object (DAO)

[top] Additional Notes

Java™ and all Java-based marks are trademarks or registered trademarks of Sun Microsystems, Inc.

[top] Student Testimonials

I really like the instructor! He knows what he is teaching and he tried to get feedback from us constantly and change the teaching material and approach immediately based on the feedback. Overall, it is a really useful training. I would like to recommend it to my colleagues.

Jianming - Salesforce.com

Everything was well organized and clearly presented. Adaptation to a diverse group was handled elegantly. Doug is a great instructor!

Mark - Apple

very knowledgable instructor explained the 'why' of stuff very well

Scott - Williams-Sonoma, Inc.

I had taken another class before with the instructor for this class, Aleksandar Gargenta, and he has demonstrated on multiple occasions that he is very well versed in the content he is presenting. I feel like I got a lot out of this course.

Andrew - Computer Sciences Corporation

Knew the subject matter very well. Did higher level overviews but could get down into lower level questions when needed. Very well paced and covered a lot of material for the 3 day course.

John - Apple

Doug has a lot to learn from ! He teaches whatever you ask for :)

Agathish - Salesforce.com

... The teacher was very knowledgable, and professional.

Joshua - Apple

I learned a lot during these three days of training. Thank you so much!! Aleksandar had solid understanding of Java and really knew the stuff inside out.

Atul - Williams-Sonoma, Inc.

The instructor and materials were excellent.

Dereck - Computer Sciences Corporation

The amount of stuff to be covered in this course is quite too much, but instructor covered pretty much all. The time can be extended of this course to cover it better. Amazing Course!

Bhagyashree - Xerox

Doug is an enthusiastic teacher, very easy to understand and went out of his way to make sure the material and pacing was tailored for the class.

Alejandro - Salesforce.com

Marakana is a great program! The instructor was very knowledgeable about the material. Would take classes from here again if offered the opportunity.

Wilfredo - Symantec Corporation

Every topic that I was looking for practice or deeper explantion was covered completely. Topics that I already had a good understanding of were explained further, and I was able to pick up details that I either did not know or had previously overlooked, which will help improve my future coding.

Joseph - Computer Sciences Corporation

Great class.

Jonathan - Symantec Corporation

Instructor displayed a great wealth of knowledge in many subjects. It left me feeling confident in our subject matters and issues.

Munchoon - Apple

I liked the fluid format of the course, but having that stated up front was helpful. I liked having more hands-on coding exercises to help me learn and retain the concepts learned.

Addison - Salesforce.com

The instructor was very knowledgeable and was able to answer all questions that came up. He clearly has extensive knowledge in this domain area.

Required - Salesforce.com

Outstanding instructor. Innovative, responsive and (best of all) took great care to point out all of the pitfalls, did not rely on simply presenting correct examples. Excellent presentation style, very clear and very consciencious at the same time.

David C - Computer Sciences Corporation