Why is having the main class be a singleton bad programming practise. Things like a static Main.getMain() method. I don't do this, and I likely won't, as I don't like doing it. I am just curious as to why people say this is bad. As an example, the NMS MinecraftServer.getServer() is a method that retrieves the singleton MinecraftServer object.