Swing Java Tutorial

import java.awt.BorderLayout;
import java.awt.Component;
import java.awt.Font;
import javax.swing.DefaultCellEditor;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.SwingConstants;
import javax.swing.table.DefaultTableModel;
public class DefaultCellEditorJTextFieldAlignment extends JFrame {
  DefaultTableModel model = new DefaultTableModel(new Object[][] { { "some", "text" },
      { "any", "text" }, { "even", "more" }, { "text", "strings" }, { "and", "other" },
      { "text", "values" } }, new Object[] { "Column 1", "Column 2" });
  public DefaultCellEditorJTextFieldAlignment() {
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    JTable table = new JTable(model);
    table.setDefaultEditor(Object.class, new MyEditor());
    getContentPane().add(new JScrollPane(table), BorderLayout.CENTER);
    pack();
  }
  public static void main(String arg[]) {
    new DefaultCellEditorJTextFieldAlignment().setVisible(true);
  }
}
class MyEditor extends DefaultCellEditor {
  public MyEditor() {
    super(new JTextField());
  }
  public Component getTableCellEditorComponent(JTable table, Object value, boolean isSelected,
      int row, int column) {
    JTextField editor = (JTextField) super.getTableCellEditorComponent(table, value, isSelected,
        row, column);
    if (value != null)
      editor.setText(value.toString());
    if (column == 0) {
      editor.setHorizontalAlignment(SwingConstants.CENTER);
      editor.setFont(new Font("Serif", Font.BOLD, 14));
    } else {
      editor.setHorizontalAlignment(SwingConstants.RIGHT);
      editor.setFont(new Font("Serif", Font.ITALIC, 12));
    }
    return editor;
  }
}