// elsewhere: class DerivedItem extends BaseItem public class BaseItem { // ... public boolean isFrobnicated() { boolean retval = false; if (isFoo) { DerivedItem dmThis = (DerivedItem) this; retVal = (dmThis.getStatus() == Status.PROCESSING); } return retval; } // ... }