
Advance your Java skills by blending object oriented design with functional coding in this course overview, covering class design, collections, strings, recursion, and error handling.
Learn how to implement an interface in Java with tractor and dishwasher classes using start and stop that print specific strings, and explore Java 9 modules and module-info.
Learn how interfaces enable polymorphism by implementing an openable interface with open and close methods that print strings, as cash register and utility account demonstrate.
Learn how to implement an abstract class in Java by creating a base vehicle class with an abstract licensing method, and implementing car and truck subclasses that override licensing.
Implement an abstract shape class with circle and rectangle subclasses, use resize to output a circle diameter of 10 meters and a rectangle size of 15 square metres.
Apply generics with a map interface, using key and value type parameters and Java 8/9, to print first three Hebrew letters as integer–string pairs, while noting map order may vary.
Apply generics to print the three largest cities and their populations using a JDK 9 map interface and for each entry.
Explore the Java collections framework, focusing on lists and ordered elements with duplicates, and implement a list with streams to skip first three and print 17 18 19 (18 twice).
Implement a collections part 1 solution in advanced Java by printing a subset of words using a list, stream, and limit.
Learn to implement the set collection in Java, print set elements with streams and for-each, and display gold, diamonds, and platinum in natural order.
Learn a solution to the collections part coding exercise by using a set of doubles to print fractional values via a stream, space-separated, with set order possibly varying.
Implement the set collection to sort characters in natural order using streams and the sorted operation, then print the symbols with spaces to demonstrate ascending punctuation sequence.
Learn to implement a Java list to print weekdays in natural order using a stream, sorted, and forEach with a lambda to output days separated by spaces.
Implement a list and the optional type to search a stream for the first integer divisible by three and return an optional value.
Learn a solution to a list searching exercise by squaring elements with map, wrapping the result in an optional, and streaming to retrieve the first matching value.
Learn to process strings by using flat map to split words into characters, apply distinct to get unique letters, and collect them into a list.
Learn to solve a string processing exercise in Java by streaming and flattening a sentence, splitting words, and sorting by length using a method reference, then collecting to a list.
Learn to implement a regular expression in java, perform pattern matching, and replace matches with a question mark in a string, demonstrated on a Shakespeare quote.
Discover a Java solution to a regular expressions exercise by building a stream pipeline that splits input, replaces matches with hyphens, and joins the results.
Learn how to implement a recursive function to compute factorials, including using an accumulator and tail call optimization to prevent stack overflow, with 5! = 120 as example.
Explore a possible recursion solution in advanced Java by implementing a recursive factorial method using a helper with an accumulator and a two-argument recursive call.
Read text from a file using a buffered read and collect words into a list, then convert to a stream and print each with a method reference.
Learn to implement a buffered reader with try-with-resources to read words from a text file, collect them into a list, and print them via a method reference.
implement a buffered writer to write to a text file with a try-with-resources block, writing three lines to a 24 dot text file and verifying its contents.
Implement a buffered writer to write lines from a William Shakespeare play into a text file, using try-with-resources to wrap an unbuffered writer and verify file output in lecture 25.
Learn how to implement exceptions in Java by using try with resources to read from files, handle no such file exceptions, and ensure resources close automatically.
Learn to handle Java exceptions with try with resources to read a file and automatically close resources, fixing no such file exception and printing content.
Implement an assertion to test equality for a list of even-length words converted to uppercase, using map and collect, and verify the results with JUnit.
Learn a solution to implementing an assertion that tests for the longest line in a file, using a single-pass buffered reader, line-by-line comparison, and setup with before and after annotations.
Begin your journey to mastery in Java and stay in demand by tailoring skills for rapid changes, blending object-oriented and functional coding, and embracing Java's enduring dominance.
The course, 'Java Developer Skills', was updated in 2022.
There are 30 lectures that are on average 5 minutes long. Every lecture includes a:
* video
* PDF
You can download these resources to do your personal study and review.
Also, this course has a number of coding exercises in order to help reinforce what you have learnt.
At the end of this course you will be able to:
* Read advanced Java code
* Write advanced Java code
* Code Java in a functional style
* Develop high quality Java applications
* Combine traditional and modern coding conventions
* Devise Java solutions when you are given a problem statement.
Lectures start with a brief explanation of the lesson topic. This is followed by working through a problem statement with expected output and suggested solution. I then do some live coding to implement the solution and produce the expected output. The lecture ends with a coding exercise for you to complete. In the next lecture I go on to explain the solution.
There are 8 main topics you will study in this course, namely:
* Introduction
* Java class design
* Collections
* Strings
* Recursion
* Input/Output
* Error handling
* Conclusion
The sooner you enroll in this course the sooner you will be able to write Java code in a functional style.
Please note that you have an unconditional 30-day money back guarantee. If you are not happy with the course you will get a full refund after 30 days.