7 Hours of Video Instruction
Core Java®, Volumes I and II, have 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®: Advanced LiveLessons, Cay S. Horstmann takes that same approach to introducing experienced programmers to Java, with detailed demonstration. This training pairs with the tenth edition of Core Java®, Volume II—Advanced Features, which has been fully updated to cover Java SE 8.
In these video LiveLessons, you will learn about advanced Java language features along with the most useful parts of the standard library.
In order to take full advantage of the lessons, be sure to download the companion source code.
Lessons 1 and 2 cover lambda expressions, an important addition to Java 8, and the streams library, which makes extensive use of lambda expressions. With streams, you can efficiently analyze large data sets, simply by telling what you want to achieve. Leave it to the streams library to figure out the “how.”
Lesson 3 covers bread-and-butter issues related to input and output: text processing, file handling, regular expressions, and connecting to web servers.
Lesson 4 covers concurrency, the most important lesson within this LiveLessons training. Nowadays, processors have multiple cores and we need to keep them busy. But it is challenging to write programs that safely run tasks in parallel. This lesson gives you a set of strategies to meet that challenge.
The next two lessons are all about building tools. Lesson 5 introduces the annotation mechanism. You will see how tools use annotations for checking program correctness, generating code, interfacing with databases and web services. Another way of making your programs smarter is by allowing your users to provide extensions in Java or a scripting language. Lesson 6 shows you how to run the Java compiler or a language interpreter in your programs.
In Lesson 7, you will learn how to write programs for users anywhere in the world, with their preferences for formatting and messages in their language.
Lesson 8 covers the new java.time package that handles complexities like leap years, time zones, and daylight savings time.
The last two lessons, Lessons 9 and 10, show you how to interface with relational databases and how to read and write XML data. These are essential skills for programming server-side application.
Intermediate to Advanced
Who Should Take This Course
Experienced Java programmers
Course RequirementsExperience programming in Java and know how to program with loops and arrays, define classes, and use collections such as lists and maps.
Table of ContentsIntroduction
About LiveLessons Video Training
LiveLessons Video Training series publishes hundreds of hands-on, expert-led video tutorials covering a wide selection of technology topics designed to teach you the skills you need to succeed. This professional and personal technology video series features world-leading author instructors published by your trusted technology brands: Addison-Wesley, Cisco Press, IBM Press, Pearson IT Certification, Prentice Hall, Sams, and Que. Topics include: IT Certification, Programming, Web Development, Mobile Development, Home and Office Technologies, Business and Management, and more. View all LiveLessons on InformIT at: http://www.informit.com/livelessons
Lesson 1: Java 8 Interfaces and Lambda Expressions
Recall the concept of interfaces
1.2 Understand Java 8 features of interfaces
1.3 Recall how interfaces are used for callbacks
1.4 Understand how lambda expressions work
Lesson 2: Streams
2.1 Understand the stream concept and its benefits
2.2 Be able to create streams
2.3 Transform streams into other streams
2.4 Know how to get answers from stream data
2.5 Work with the Optional type
2.6 Place stream results into collections
2.7 Place stream results into maps
2.8 Understand the concept of reduction operations
2.9 Work with streams of primitive type values
2.10 Speed up stream operations with parallel streams
Lesson 3: Processing Input and Output
3.1 Understand the concept of input/output streams
3.2 Read and write text files
3.3 Work with binary data
3.4 Create, access, and delete files and directories
3.5 Process data from the Internet
3.6 Work with regular expressions
3.7 Understand the concept of serialization
Lesson 4: Concurrent Programming
4.1 Use executors to run tasks concurrently
4.2 Understand the risks of concurrent execution
4.3 Use the Java API for parallel algorithms
4.4 Use the threadsafe data structures in the Java API
4.5 Work with atomic values
4.6 Become familiar with low-level locks
4.7 Understand the characteristics of Java threads
4.8 Organize asynchronous computations
4.9 Run operating system processes
Lesson 5: Annotations
5.1 Know how to annotate declarations and type uses
5.2 Define your own annotations
5.3 Be familiar with the annotations in the Java API
5.4 Understand how annotations are processed
Lesson 6: Compiling and Scripting
6.1 Run the Java compiler from a Java program
6.2 Use a scripting language in a Java program
Lesson 7: Internationalization
7.1 Understand the concept of a locale
7.2 Use locale-specific formatting for numbers and dates
7.3 Work with strings in multiple languages
7.4 Organize locale-specific data in resource bundles
Lesson 8: Date and Time
8.1 Understand the challenges of computing with dates and times
8.2 Work with instants and durations
8.3 Use the Java classes for local dates and times
8.4 Be able to handle time zones
8.5 Interoperate with legacy date and time classes
Lesson 9: Java Database Connectivity
9.1 Understand the design of the Java database connectivity API
9.2 Be able to connect to a database in a Java program
9.3 Execute SQL statements from a Java program
9.4 Use database query results
9.5 Group SQL statements into transactions and batches
9.6 Access database metadata
Lesson 10: XML
10.1 Parsing XML documents
10.2 Work with the XPath and namespaces specifications in Java
10.3 Use a streaming parser
10.4 Generate XML documents