Inner Class
Subclass
An inner class is a class that is nested within another class.
A subclass is a class that inherits from another class called the superclass.
It provides access rights for the class, which is nesting it, which can access all variables and methods defined in the outer class.
It provides access to all public and protected methods and fields of its superclass.