I was reading a textbook and I was wondering how come the argument we pass to the function is neither a primitive or an user-defined instance of a class.
SwingU
This is actually passing an instance of an anonymous inner class implementing the Runnable interface. Read about them in the Java tutorial.