Термины используются взаимозаменяемо. Если вы хотите быть действительно педантичным, то вы можете определить «вложенный класс» для обозначения статического внутреннего класса, который не имеет закрывающего экземпляра. В коде у вас может быть что-то вроде этого:
public class Outer {
public class Inner {}
public static class Nested {}
}
Это не совсем общепринятое определение.