Home > Store

Core Java 9/10 Fundamentals Complete Video Course, 2nd Edition

Online Video

Register your product to gain access to bonus material or receive a coupon.


  • Copyright 2018
  • Edition: 2nd
  • Online Video
  • ISBN-10: 0-13-516007-3
  • ISBN-13: 978-0-13-516007-7

11+ Hours of Video Instruction


Core Java® has long been recognized as the leading, no-nonsense tutorial and reference for experienced programmers who want to write robust Java code for real-world applications.

In Core Java® 9/10 Fundamentals Complete Video Course, Second Edition, Cay S. Horstmann takes that same approach to introducing experienced programmers to Java, with detailed demonstration. This training pairs with the forthcoming eleventh edition of Core Java®, Volume I—Fundamentals, which is being fully updated to cover Java SE 9 and 10.


The first two lessons of Core Java® 9/10 Fundamentals Complete Video Course, Second Edition, quickly review the history of Java and show you, step by step, how to install the software development environment. In lesson 3, you will learn how to do in Java what you already know in another programming language: write branches and loops, and work with numbers, strings, and arrays.

Lesson 4 covers object-oriented programming. Java is thoroughly object-oriented, and the lesson shows you how to use built-in classes and how to build your own. Lessons 5 and 6 cover inheritance and interfaces as well as the lambda expressions, a powerful new feature of Java SE 8.

Lesson 7 shows you what to do when your programs do the wrong thing. The lesson covers exception handling, logging, and debugging. In lesson 8, you will learn how to write generic code that works for many different data types. Lesson 9 puts those skills to work, when we examine the multitude of Java collections that allow you to organize your data in many ways.

The final three lessons introduce the fundamentals of user interface programming in Java.

About the Instructor

Cay S. Horstmann is a professor of computer science at San Jose State University and a Java Champion. He is also the author of Core Java®, Volumes I and II, Tenth Edition (Prentice Hall, 2016), Core Java SE 9 for the Impatient, Second Edition (Addison-Wesley, 2018), and Scala for the Impatient, Second Edition (Addison-Wesley, 2017). He has written more than a dozen other books for professional programmers and computer science students.

What You Will Learn

When you have completed this course, you will know enough Java to put it to work anywhere where Java is used: in backend servers, desktops, mobile devices, and embedded systems.

Who Should Take This Course

Programmers who are comfortable in another language and want to learn Java.

Course Requirements

Any procedural or object-oriented programming language such as C, C++, C#, JavaScript, Matlab, Python, Perl, PHP, Objective-C, R, Swift, or Visual Basic.

About Pearson Video Training

Pearson publishes expert-led video tutorials covering a wide selection of technology topics designed to teach you the skills you need to succeed. These professional and personal technology videos feature world-leading author instructors published by your trusted technology brands: Addison-Wesley, Cisco Press, Pearson IT Certification, Prentice Hall, Sams, and Que Topics include: IT Certification, Network Security, Cisco Technology, Programming, Web Development, Mobile Development, and more.  Learn more about Pearson Video training at http://www.informit.com/video.

Sample Content

Table of Contents


Lesson 1: An Introduction to Java

Learning objectives

1.1 Understand the design decisions that shaped Java

1.2 Become familiar with the history of Java

Lesson 2: The Java Programming Environment

Learning objectives

2.1 Set up your Java development environment

2.2 Use the command-line tools

2.3 Use an integrated development environment

2.4 Run graphical applications and applets

Lesson 3: Fundamental Programming Structures in Java

Learning objectives

3.1 Write a simple Java program

3.2 Work with numeric data types

3.3 Work with Strings and the API documentation

3.4 Write programs that read input and produce output

3.5 Use the control flow constructs of the Java language

3.6 Work with big numbers when arbitrary precision is required

3.7 Use arrays to store multiple elements of the same type

Lesson 4: Objects and Classes

Learning objectives

4.1 Understand the fundamental concepts of object-oriented programming

4.2 Work with predefined classes

4.3 Define your own classes

4.4 Understand advanced concepts of classes in Java

4.5 Understand parameter passing in Java

4.6 Learn more about object construction

4.7 Work with packages and imports

4.8 Use the javadoc utility to produce class documentation

4.9 Design classes effectively

Lesson 5: Inheritance

Learning objectives

5.1 Understand and define subclasses

5.2 Override methods and provide constructors in subclasses

5.3 Understand advanced inheritance concepts in Java

5.4 Work with the Object class and its methods

5.5 Understand how inheritance shapes Java language features

5.6 Use reflection to work with arbitrary objects

5.7 Use inheritance effectively

Lesson 6: Interfaces, Lambda Expressions, and Inner Classes

Learning objectives

6.1 Understand the concept of interfaces

6.2 Understand the properties of Java interfaces

6.3 Work with default methods

6.4 Become familiar with use cases for interfaces

6.5 Understand how lambda expressions work

6.6 Understand the inner workings of inner classes

Lesson 7: Exceptions, Assertions, and Logging

Learning objectives

7.1 Use exceptions to report errors in a program

7.2 Catch exceptions to remedy error conditions

7.3 Know how to use exceptions effectively

7.4 Use assertions to enforce algorithm constraints

7.5 Use logging to record what your program does

Lesson 8: Generic Programming

Learning objectives

8.1 Understand the advantages of generic programming

8.2 Define a simple generic class

8.3 Define generic methods

8.4 Know how to place restrictions on type variables

8.5 Understand how generic code is translated to run on the Java virtual machine

8.6 Be aware of restrictions and limitations of Java generics

8.7 Understand the interaction between generic types and inheritance

8.8 Work with reflection and generic types

Lesson 9: Collections

Learning objectives

9.1 Understand the benefit of separate collection classes and interfaces

9.2 Become familiar with the types in the collections framework

9.3 Work with linked lists and array lists

9.4 Work with hash sets and sorted sets

9.5 Work with queues, deques, and priority queues

9.6 Use maps to organize key/value pairs

9.7 Understand collection wrappers and views

9.8 Use common algorithms with collections

9.9 Be able to use collections from old versions of Java

Lesson 10: JavaFX

Learning objectives

10.1 A brief history of Java GUI programming

10.2 Displaying information in a scene

10.3 Event handling

10.4 Layout

10.5 User interface controls

10.6 Dialogs

10.7 Fancy controls

10.8 Properties and bindings

10.9 Asynchronous processing

Lesson 11: Swing Principles

Learning objectives

11.1 Understand the design decisions behind the Swing Toolkit

11.2 Be able to display frame windows

11.3 Display graphical shapes

11.4 Display colors, fonts, and images

11.5 Understand how a program can react to user interface events

11.6 Provide user interface actions that can be activated in multiple ways

11.7 Handle mouse events

11.8 Understand the AWT event hierarchy

Lesson 12: User Interface Components with Swing

Learning objectives

12.1 Understand how Swing uses the model-view-controller design pattern

12.2 Be able to arrange user interface components in a window

12.3 Process text input

12.4 Present choices in a user interface

12.5 Implement menus and toolbars

12.6 Solve complex layout management tasks

12.7 Use and implement dialog boxes



Submit Errata

More Information

Unlimited one-month access with your purchase
Free Safari Membership