# 테이블

## JTable

* `JTable(Object[][],Object[])` / `JTable(TableModel)`


* `setFillsViewportHeight(boolean)`
* `getTableModel()`
* `getTableHeader()`
* `getColumnModel()`
* `setAutoResizeMode(int)`
* `setSelectionMode(int)` : ListSelectionModel.MULTIPLE_INTERVAL_SELECTION | SINGLE_INTERVAL_SELECTION | SINGLE_SELECTION
* `getRowSelectionAllowed()` / `setRowSelectionAllowed(boolean)`
* `getColumnSelectionAllowed()` / `setColumnSelectionAllowed(boolean)`
* `getCellSelectionAllowed()` / `setCellSelectionAllowed(boolean)`
* `getSelectedRows()` / `getSelectedColumns()`

* `setDefaultRenderer()`
* `setDefaultEditor()`

* `setAutoCreateRowSorted(boolean)`
* `setRowSorted(TableRowSorter)`


## TableModel

* `addTableModelListener()`
* `fireTableCellUpdated()`
* `fireTableRowUpdated()`
* `fireTableDataChanged()`
* `fireTableRowsInserted()`
* `fireTableRowsDeleted()`
* `fireTableStructureChanged()`

### DefaultTableModel

### AbstractTableModel

## JTableHeader

## TableColumnModel

* `getColumn()`

## TableColumn

* `setPreferredWidth(int)`
* `setCellRenderer()`
* `setCellEditor()`


## TableModelListener

## TableCellRenderer

* `setToolTipText()`

### DefaultTableCellRenderer

## TableRowSorter

## TableCellEditor
### DefaultCellEditor
### AbstractCellEditor