Suppose you want to create one form to be a base (superclass) for other forms (extending the base one). You can create the base form as usual, but it should match the requirements described in Creating a custom container bean:

  • it must be a bean (with public constructor without parameters),
  • it must be compiled at the time when used (i.e. when editing the extending forms),
  • it must be empty (with no components), or have an empty container delegate defined.

To create a form extending the base form, use Bean Form template and set its superclass to the base form class.

Some additional notes:

  • You will see the base form in the designer when editing the extending form (similarly as you see e.g. JFrame when creating form from JFrame).
  • Any changes made in the extending form won't affect the base form.
  • Changes made in the base form will affect all forms extending it.

Tip for iterative development:

If you change something in the base form, don't forget to compile it. If there are some extending forms opened at the same time, they won't be updated automatically -- you must reopen them to load the new base class (to do it quickly, press Ctrl+R in each form).

Source: NetBeans User FAQ