Every array has an associated prototype which is derived from the array's first item. If the first item is a (ref to) an Instance of a Class, the prototype is a ref to that Class.
Fill items for an overtake operation, are derived from the argument's prototype.
For each Class reference in the prototype, there is a ref to a (newly constructed and distinct) instance of that Class that is initialised by the niladic (default) constructor for that Class, if defined.
2↑⎕NEW MyClass
#.[Instance of MyClass] #.[Instance of MyClass]
Note that in the above example, two distinct instances are
constructed (the first by ⎕NEW and the second by the overtake).
Fill items are used in a number of operations including:
(⊃ or
↑) of an empty array