class A { T foo(){ return null; } } class B extends A { Object foo(){return null;} void bar() { foo(); if (foo() == null) return; } }