Im making ControllerMenu to manage the transition between menus.
All my Menus have got only non-static methods and they are using instances from Service layers to connect/edit everything from data layers.
Individual menus should not require a ControllerMenu (so it cannont appear in any Menu constructor, as a class field and I think I shouldnt make an instance of it in these classes) . The dependency should only be one way. This is my solution for this problem:
https://pastebin.com/pepjBQN8 But in my opinion this code is pretty messy-a lot of instances for every method etc. Is there any another way to make it works? Most beautiful solution it would be "using methods (and make them non-static) from ControllerMenu without creating instances in every Menu" but I think its impossible.