Void
предназначен только для того, чтобы показать, что метод может возвращать только null
, к сожалению, нет способа напрямую объявить нулевой тип. Поскольку jvm Void является только обычным классом, расширяющим Object, и поэтому не может использоваться вместо других классов или интерфейсов, это делает Void для вашего примера бесполезным.
Поскольку ваш метод не возвращает ничего, кроме null, вы можете заменить Void на что-то вроде следующего:
public final SerializebaleVoid extends Object implements Serializeable{
private SerializeableVoid(){}
}
Что касается вызова void примитива, void показывает отсутствие значения, метод, возвращающий void, не возвращает значение типа void, а буквально ничего не возвращает.