Top-level classes can only have public, abstract, and final modifiers, and it is also possible to not define any class modifiers at all.
private, protected, and static modifiers cannot be used when declaring
top-level classes.
More than one top-level class can be defined in a
Java source file, but there can be AT MOST ONE public top-level class declaration.
Most importantly a TOP LEVEL CLASS' NAME MUST MATCH WITH THE FILE NAME. OTHERWISE THE COMPILER WILL COMPLAIN ABOUT THE SAME.
Now you can understand what is a super class....
Regards,
Vijaya Raghava