Vavr User Guide - Daniel Dietrich, Robert Winkler

Library for writing functional code in Java

Link

Effective Java - Chapter 4: Classes and Interfaces

Slideshare Link