title: Java equivalent of C# Delegates (queues methods of various classes to be executed)
body: <p>TLDR:</p>
  
  <p>Is there a Java equivalent of C#'s <a href="http://www.tutorialsteacher.com/csharp/csharp-delegates" rel="noreferrer">delegates</a> that will allow me to queue up methods of various classes and add them to the queue dynamically? Language constructs instead of the code for it.</p>
  
  <p>Context:</p>
  
  <p>I have used Unity 3D before and I love things like the <code>Update</code> method of scripts. Just declaring the method adds it to the list of methods executed each frame. I want to create something like that in my LWJGL game. For this, I would want to use delegates (or something equivalent to it). Is there any Java language construct that would allow me to do this? I would prefer answers that include two or more (so that I can pick and choose which will be the most optimal for my code) constructs and a way of using them. I don't want the code, I just want to know where to start. The most fun part of programming is working the problem out and I don't want to be deprived of that. Also, I don't want to be told EXACTLY how to do it. I want to be guided in the right direction instead of being thrown in that direction onto that destination. How would I learn? :-)</p>