I'm impressed about monad transformers provided by ScalaZ and now interested if it's possible to implement something like `OptionT` in Java? 

In Scala we can use `TypeClass`es for this which simplifies implementation. Is there something like this in Java?