Ну это кнч хоть и лучше чем getInstance, но все равно такое себе. Пока в твоем Main имеется 1-2 геттера таких еще все более менее хорошо. Если у тебя там больше 3-4 таких геттеров то уже плохо, так как в этом классе может появиться надобность использовать две разные имплементации, которые у Main идут одинаковые. Ну и вообще если тебе нужен только сам объект JavaPlugin и MessageManager то в конструкторе лучше их и передавать.
Код:
class Some {
private JavaPlugin plugin;
private MessageManager messageManager;
public Some(JavaPlugin plugin, MessageManager messageManager) {
this.plugin = plugin;
this.messageManager = messageManager;
}
}
Такая реализация будет намного лучше