So basically monads are like a Java object that has a private field and a getter method that has some extra logic. Hey, that's really simple, you're right!
Almost, it's more like an "applyer" method with some extra logic. You're never allowed to get "raw" values out, you can only pass functions inward to modify the value.
If you want to get the raw values out (and you almost always do) then you have to add some extra logic to the object above its "monadic" nature.