How does IDEA bind classes to .form files?

2019-01-28 12:52发布

问题:

Intellij IDEA has a feature where you can bind form files to a class.

https://www.jetbrains.com/help/idea/binding-a-form-to-a-new-class.html

The "linked" class has the corresponding items lke JPanels etc. as private references but they are never set to anything.

Example:

public class Formtest{
    private JPanel panel1;
    private JLabel label1;
    ....
}

I was wondering how exactly this works at run time, and how exactly they get matched together .

回答1:

There is an option for the gui designer to generate initialization code inside the source file, you can enable it to see how exactly it works and what code is generated by the IDE, otherwise this code is not present in the .java file and is instrumented only into bytecode when you compile the project using IntelliJ IDEA or javac2 Ant task.