Java "Optimization": if controls in lower classes
===

Is it better to control variables and parameter "only" (mostly) in the upper areas of the call hierarchy 
<br/>
or
<br/>
to save each class individually against wrong parameters, because you don't know who may call it in the future.
<br/>
<br/>
I am in the moment a little ambivalent. But i tend to write some more ifs than leave classes unprotected.
<br/>
<br/>
What do you think?