ColumnFactory { public static synchronized void setInstance(ColumnFactory factory) { columnFactory = factory; }  static synchronized ColumnFactory getInstance(); static synchronized void setInstance(ColumnFactory factory); TableColumnExt createAndConfigureTableColumn(TableModel model, int modelIndex); TableColumnExt createTableColumn(int modelIndex); void configureTableColumn(TableModel model, TableColumnExt columnExt); void configureColumnWidths(JXTable table, TableColumnExt columnExt); int getPreferredScrollableViewportWidth(JXTable table); void packColumn(JXTable table, TableColumnExt columnExt, int margin,
            int max); int getDefaultPackMargin(); void setDefaultPackMargin(int margin);  }
@Test public void testSetColumnFactory() { ColumnFactory myFactory = new ColumnFactory(); ColumnFactory.setInstance(myFactory); JXTable table = new JXTable(); assertSame(myFactory, table.getColumnFactory()); }