There is such code:
abstract class AClass{ public void abc() { System.out.println("Wow!"); } } public class Demo{ public static void main(String[] args){ AClass tmp = new AClass() {}; tmp.abc(); } } and it works. Nowhere did I find the information into what exactly the curly brackets turn this object into.
How else, except as an object of the abstract class AClass , can the tmp object be interpreted?