Inner classes are bassically a type of class and its follow most of the same rules as a normal class. The main difference is an inner class is declared within the curly braces of a class or even within a method. Inner classes are also classes defined at a scope smaller than a package. > Local inner classes Member inner classes. Static inner classes are not actually inner classes, but are considered top-level nested classes.