public Object getValueAt(int row, int col) {
        if (data == null) {
            return null;
        }
        if (col >= columnNames.length || col < 0 || row < 0) {
            return null;
        }
        return data[row][col];
    }