Ответ 1
При расщеплении исходного файла
Нет. Исходные коды Java нельзя разделить на несколько файлов.
Из Статья в Википедии Сравнение Java и C Sharp
Компилятор Sun Microsystems Java требует, чтобы имя исходного файла соответствовало только общедоступному классу внутри него, а С# допускает несколько общедоступных классов в одном файле и не содержит ограничений на имя файла. С# 2.0 и более поздние версии позволяют делить определение класса на несколько файлов, используя неполное ключевое слово в исходном коде. В Java открытый класс всегда будет находиться в собственном исходном файле. В С# файлы исходного кода и разделение логических единиц не связаны друг с другом.
О разделении логики и интерфейса на собственные классы
В этом случае подход с двумя классами является гораздо лучшим решением, чем подход с одним классом-двумя источниками, поскольку разделение выполняется в дизайне, а не только физическое разделение в исходных кодах.