question: protected void addColumn ( String name , Column col ) { int idx = getColumnNumber ( name ) ; if ( idx >= 0 && idx < m_columns . size ( ) ) { throw new IllegalArgumentException ( "Table already has column with name \"" + name + "\"" ) ; } m_columns . add ( col ) ; m_names . add ( name ) ; m_lastCol = m_columns . size ( ) - 1 ; ColumnEntry entry = new ColumnEntry ( m_lastCol , col , new ColumnMetadata ( this , name ) ) ; ColumnEntry oldEntry = ( ColumnEntry ) m_entries . put ( name , entry ) ; if ( oldEntry != null ) oldEntry . dispose ( ) ; invalidateSchema ( ) ; col . addColumnListener ( this ) ; fireTableEvent ( m_rows . getMinimumRow ( ) , m_rows . getMaximumRow ( ) , m_lastCol , TableModelEvent . INSERT ) ; }
target:  Internal method for adding a column.