Я видел этот образец кода от Oracle Website о Java?Какова цель вложенных классов в Java?
public class Parent {
class InnerClass {
void methodInFirstLevel(int x) {
// some code
}
}
public static void main(String... args) {
Parent parent = new Parent();
Parent.InnerClass inner = parent.new InnerClass();
}
}
- Какова цель конструкции
parent.new InnerClass()
? - Какие классы подходят для такой конструкции?
Данное название может быть ошибочным: Я все это понимаю об этой конструкции.
Я просто не понимаю, где и когда использовать эту функцию Java.
Я нашел другой синтаксис, чтобы сделать то же самое: Java: Non-static nested classes and instance.super()
Есть много в ссылках об этой структуре, но ничего о приложении.
[Ссылки]
- Java inner class and static nested class
- Java: Static vs non static inner class [duplicate]
- what is the use of inner classes in java ? is nested classes and inner classes are same? [duplicate]
- Java: Static vs non static inner class [duplicate]
Одним из полезных применений является статический внутренний класс с именем 'Builder' для шаблона проектирования Builder ... – ppeterka
Официальный учебник по Java охватывает их: http://docs.oracle.com/javase/tutorial/java/javaOO/nested .html –
Не определен для Java 8, существует, вероятно, с первой версии Java –