If we invoke the overloaded version w/ just 2 parameters, we’ll get a null File file and a this Object callbackObject when it reaches the overloaded version w/ 4 parameters:
Then the overloaded version w/ 4 parameters invokes the 1 w/ 6 parameters, passing null for Frame parent and this for PApplet sketch:
Given selectOutput() is a method from class PApplet, the keyword this holds a reference for the current instance of it; which is our sketch.
It means by default the parameter String callback represents the name of some public void (File) method inside our sketch.
If we instead need for it to callback a method name belonging to some other class, we can use any overloaded version w/ 4 or more parameters, passing the instance of the target class as the argument for the parameter Object callbackObject.