Нет, нет ничего похожего на явную реализацию интерфейса C # в Java.
С другой стороны, у Java есть ковариантные возвращаемые типы, поэтому, если вы хотите обеспечить более строго типизированную реализацию, чем указано в интерфейсе, это нормально. Например, это нормально:
interface Foo
{
Object getBar();
}
public class Test implements Foo
{
@Override
public String getBar()
{
return "hi";
}
}
C # не допустит этого - и один из способов, как это обычно делается, заключается в явной реализации интерфейса, а затем в более конкретном открытом методе (обычно вызываемом реализацией интерфейса).