Core Java: Advanced

Core Java: Advanced

English | 2016 | MP4 | AVC 1280×720 | AAC 44KHz 2ch | 4h 38m | 2.28 GB

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 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.

What You Will Learn

  • Understand an lambda expressions and streams
  • Read and write files, work with directories, and work with data on the internet
  • Understand how to write programs with concurrent tasks
  • Build sophisticated tools with annotations
Table of Contents

Advanced Core Java: Introduction

Lesson 1: Java 8 Interfaces and Lambda Expressions
1.0 Learning objectives
1.1 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.0 Learning objectives
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 and maps
2.7 Understand the concept of reduction operations
2.8 Work with streams of primitive type values
2.9 Speed up stream operations with parallel streams

Lesson 3: Processing Input and Output
3.0 Learning objectives
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.0 Learning objectives
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.0 Learning objectives
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