Java&#x27;s Optional is exactly unlike a NullObject. Optional is not a Proxy. Being untyped, not being an implementation of the interface, it can&#x27;t be used interchangeably.<p>It&#x27;s NullObjects all the way down. Makes more sense when designs favor compositions over inheritance.<p>Optional is the wrapper no one needed. For syntactic sugar, static library methods worked just fine.