Pytanie : Dlaczego niezgodny typ błąd w TableSorter.java?

cześć zastosowanie,
i am pluskwa w nasz istniejący j2ee zastosowanie. ono być desktop GUI app. i otwierać ono w Jdeveloper i próba complie ono ale i dostać the błąd jak the następujący:
Error (148,74): niezgodny typ; znajdować: klasowy java.lang. ClassNumber>, wymagać: klasowy java.lang. Class
Error (169,74): niezgodny typ; znajdować: klasowy java.lang. ClassNumber>, wymagać: klasowy java.lang. Class

those błąd zdarzać się w TableSorter.java, che być od Słońce, the prawo autorskie być 2002.

how móc i ten zagadnienie? być może i brakować biblioteka?

thanks lot
(1):
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
143:
144:
145:
146:
147:
148:
149:
150:
151:
152:
153:
154:
155:
156:
157:
158:
159:
160:
161:
162:
163:
164:
165:
166:
167:
168:
169:
170:
171:
172:
173:
174:
175:
176:
177:
178:
179:
180:
181:
182:
183:
184:
185:
186:
187:
188:
189:
190:
191:
192:
193:
194:
195:
196:
197:
198:
199:
200:
201:
202:
203:
204:
205:
206:
207:
208:
209:
210:
211:
212:
213:
214:
215:
216:
217:
218:
219:
220:
221:
222:
223:
224:
225:
226:
227:
228:
229:
230:
231:
232:
233:
234:
235:
236:
237:
238:
239:
240:
241:
242:
243:
244:
245:
246:
247:
248:
249:
250:
251:
252:
253:
254:
255:
256:
257:
258:
259:
260:
261:
262:
263:
264:
265:
266:
267:
268:
269:
270:
271:
272:
273:
274:
275:
276:
277:
278:
279:
280:
281:
282:
283:
284:
285:
286:
287:
288:
289:
290:
291:
292:
293:
294:
295:
296:
297:
298:
299:
300:
301:
302:
303:
304:
305:
306:
307:
308:
309:
310:
311:
312:
313:
314:
315:
316:
317:
318:
319:
320:
321:
322:
323:
324:
325:
326:
327:
328:
329:
330:
331:
332:
333:
334:
335:
336:
337:
338:
339:
340:
341:
342:
343:
344:
345:
346:
347:
348:
349:
350:
351:
352:
353:
354:
355:
356:
357:
358:
359:
360:
361:
362:
363:
364:
365:
366:
367:
368:
369:
370:
371:
372:
373:
374:
375:
376:
377:
378:
379:
380:
381:
382:
383:
384:
385:
386:
387:
388:
389:
390:
391:
392:
393:
394:
395:
396:
397:
398:
399:
400:
401:
402:
403:
404:
405:
406:
407:
408:
409:
410:
411:
412:
413:
414:
415:
416:
417:
418:
419:
420:
421:
422:
423:
424:
425:
426:
427:
428:
429:
430:
431:
432:
433:
434:
435:
436:
437:
438:
439:
440:
441:
442:
443:
444:
445:
446:
447:
448:
449:
450:
451:
452:
453:
454:
455:
456:
457:
458:
459:
460:
461:
462:
463:
464:
465:
466:
467:
468:
469:
470:
471:
472:
473:
474:
475:
476:
477:
478:
479:
480:
481:
482:
483:
484:
485:
486:
487:
488:
489:
490:
491:
492:
493:
494:
495:
496:
497:
498:
499:
500:
501:
502:
503:
504:
505:
506:
507:
508:
509:
510:
511:
512:
513:
514:
515:
516:
517:
518:
519:
520:
521:
522:
523:
524:
525:
526:
527:
528:
529:
530:
531:
532:
533:
534:
535:
536:
537:
538:
539:
540:
541:
542:
543:
544:
545:
546:
547:
548:
549:
550:
551:
552:
553:
554:
555:
556:
557:
558:
559:
560:
561:
562:
563:
564:
565:
566:
567:
568:
569:
570:
571:
572:
573:
574:
575:
576:
577:
578:
579:
580:
581:
582:
583:
584:
585:
586:
587:
588:
589:
590:
591:
592:
593:
594:
595:
/*
 * TableSorter.java
 *
 * Tworzyć na 29 Luty 2004, 10:01
 *

pakunek au.com.ords.com mission.client.util.table;

/*
 * Prawo autorskie 2002 Sun Microsystems, Inc. Wszystkie dobro rezerwować.
 *
 * Redystrybucja i use w źródło i binary forma, z lub bez
 * modyfikacja, pozwalać pod warunkiem, że the następujący warunek
 * spotykać:
 *
 * - Redystrybucja źródło kod musieć the prawo autorskie prawo autorskie
 * zauważać, ten lista warunek i the następujący dementi.
 *
 * - Redystrybucja w binary forma musieć the prawo autorskie prawo autorskie
 * zauważać, ten lista warunek i the następujący dementi wewnątrz
 * the dokumentacja and/or inny materiał provided z the
 * dystrybucja.
 *
 * Imię the imię Sun Microsystems, Inc. lub the imię
 * współpracownik móc używać lub produkt czerpać
 * od ten oprogramowanie bez odmianowy uprzedni pisać pozwolenie.
 *
 * Ten oprogramowanie provided "BYĆ," bez gwarancja żadny
 * rodzaj. PRZEDSTAWICIELSTWO WYRAŻAĆ LUB DOROZUMIANY WARUNEK, PRZEDSTAWICIELSTWO I
 * GWARANCJA, WLICZAJĄC JAKAŚ DOROZUMIANY GWARANCJA MERCHANTABILITY,
 * SPRAWNOŚĆ FIZYCZNA DLA SZCZEGÓLNY PURPOSE LUB NON-INFRINGEMENT, BYĆ NINIEJSZYM
 * WYKLUCZAĆ. SŁOŃCE I SWÓJ LICENSORS BYĆ ODPOWIEDZIALNY DLA JAKAŚ SZKODA
 * CIERPIEĆ KONCESJONARIUSZ JAKO REZULTAT, LUB
 * THE OPROGRAMOWANIE LUB SWÓJ DERYWAT. W ŻADNY WYDARZENIE SŁOŃCE
 * LUB SWÓJ LICENSORS BYĆ ODPOWIEDZIALNY DLA JAKAŚ PRZEGRANY DOCHÓD, ZYSK LUB DANE, LUB
 * DLA BEZPOŚREDNI, POŚREDNI, SPECJALNY, WAŻNY, INCYDENTALNY LUB
 * ZADOŚĆUCZYNIENIE, JAKKOLWIEK POWODOWAĆ I NIEZALEŻNIE OD THE TEORIA
 * ODPOWIEDZIALNOŚĆ, POWSTAWAĆ Z THE USE LUB NIEZDOLNOŚĆ OPROGRAMOWANIE,
 * NAWET JEŚLI SŁOŃCE RADZIĆ THE MOŻLIWOŚĆ TAKI SZKODA.
 *
 * Ty uznawać że Oprogramowanie projektować, koncesjonować lub zamierzać
 * dla use w the projekt, budowa, operacja lub utrzymanie
 * jakaś obiekt nuklearny.
 *

/**
 * Brakarka dla TableModels. The brakarka mieć wzorcowy (być zgodnym TableModel)
 tableModel * i uprawomocniać TableModel. TableSorter przechować lub kopiować
 * the dane w the TableModel, zamiast ono utrzymywać szyk
 * integers che ono utrzymywać the ten sam rozmiar jako the liczba rząd w swój
 * model. Gdy the wzorcowy zmiana ono zawiadamiać the brakarka który gdy
 * zmieniać eg. "rowsAdded" tak, że swój wewnętrzny szyk integers
 * móc móc. Gdy prośba zrobić the brakarka (jak
 * getValueAt (rząd, col) ono redirects swój model przez the
 * szyk. Ten sposób the TableSorter pojawiać się inny kopia the stół
 * z the rząd w różny rozkaz. The algorthm używać być niewywrotny
 * che znaczyć że ono ruszać się wokoło rząd gdy swój porównanie
 * funkcja wracać (0) denote że być równoznaczny.
 *
 * @version 1.8 04/23/99
 * @author Philip Milne
 *
importowy java.awt. Składnik;
importowy java.util.*;

importowy javax.swing.ImageIcon;
importowy javax.swing.SwingConstants;
importowy javax.swing.table.TableModel;
importowy javax.swing.event.TableModelEvent;

// Import dla w górę mysz wydarzenie od the JTable.

importowy java.awt.event.MouseAdapter;
importowy java.awt.event.MouseEvent;
importowy java.awt.event.InputEvent;
importowy javax.swing.JLabel;
importowy javax.swing.JTable;
importowy javax.swing.UIManager;
importowy javax.swing.table.JTableHeader;
importowy javax.swing.table.TableColumn;
importowy javax.swing.table.TableColumnModel;
importowy javax.swing.table.TableCellRenderer;
importowy javax.swing.table.DefaultTableCellRenderer;

importowy au.com.ords.com mission.client.util.table.TableMap;

społeczeństwo klasowy TableSorter przedłużyć TableMap
{
    int wskaźnik [];
    Wektorowy sortingColumns = nowy Wektor ();
    true = true;
    int sortingColumn = -1;
    int porównywać;
    modyfikować = fałszywy;
    
    jawny TableSorter ()
    {
        wskaźnik = nowy int [(0)]; // Dla konsystencja.
    }
    
    jawny TableSorter (TableModel model)
    {
        setModel (model);
    }
    
    jawny kawitacyjny setModel (TableModel model)
    {
        sortingColumn = -1;
        super.setModel (model);
        reallocateIndexes ();
    }
    
    jawny int compareRowsByColumn (int row1, int row2, int kolumna)
    {
        Klasowy typ = model.getColumnClass (kolumna);
        TableModel dane = model;
        
        // Czek dla nulls
        
        Przedmiot o1 = data.getValueAt (row1, kolumna);
        Przedmiot o2 = data.getValueAt (row2, kolumna);
        
        // Jeżeli oba wartość być null powrót (0)
        jeżeli (o1 == null && o2 == null)
        {
            powrót (0);
        }
        inny jeżeli (o1 == null)
        {// Definiować null mniej everything.
            powrót -1;
        }
        inny jeżeli (o2 == null)
        {
            powrót (1);
        }
        
        /* My kopiować wszystkie wracać wartość od the getValue wezwanie jeśli
        zoptymalizowany model reusing jeden przedmiot wiele wartość.
        The Numerowy podklasa w the JDK być niezmienny i więc używać wewnątrz
        ten sposób ale inny podklasa Liczba można to save
        przestrzeń i unikać niepotrzebny rozsypisko przydział.
         *
        jeżeli (type.getSuperclass () == java.lang. Number.class)
        {
            Numerowy n1;
            Numerowy n2;
****** błąd zdarzać się pod *********            
            jeżeli (data.getValueAt (row1, kolumna) .getClass () .getSuperclass () == java.lang. Number.class)
**************************************************
            {
                n1 = (Numerowy) data.getValueAt (row1, kolumna);
            }
            inny
            {
                próba
                {
                    n1 = Double.valueOf (data.getValueAt (row1, kolumna) .toString ());
                }
                chwyt (NumberFormatException nexc)
                {
                    //n1 = nowy Kopia ((0));
                    rzut nowy ClassCastException ("Kolumna" + model.getColumnName (kolumna) + "móc sortować. +" +
                    "\ nTrying Liczba gdy rząd" + row1 + "być" + data.getValueAt (row1, kolumna) .getClass () +
                    "\ nand rząd" + row2 + "być" + data.getValueAt (row2, kolumna) .getClass () + ".");
                }
            }
            
            dwoisty d1 = n1.doubleValue ();
************ błąd zdarzać się pod ***************            
            jeżeli (data.getValueAt (row2, kolumna) .getClass () .getSuperclass () == java.lang. Number.class)
******************************************************
            {
                n2 = (Numerowy) data.getValueAt (row2, kolumna);
            }
            inny
            {
                próba
                {
                    n2 = Double.valueOf (data.getValueAt (row2, kolumna) .toString ());
                }
                chwyt (NumberFormatException nexc)
                {
                    //n2 = nowy Kopia ((0));
                    rzut nowy ClassCastException ("Kolumna" + model.getColumnName (kolumna) + "móc sortować. +" +
                    "\ nTrying Liczba gdy rząd" + row1 + "być" + data.getValueAt (row1, kolumna) .getClass () +
                    "\ nand rząd" + row2 + "być" + data.getValueAt (row2, kolumna) .getClass () + ".");
                }

            }
            
            dwoisty d2 = n2.doubleValue ();
            
            jeżeli (d1 < d2)
                powrót -1;
            inny jeżeli (d1 > d2)
                powrót (1);
            inny
                powrót (0);
        }
        inny jeżeli (typ == java.util. Date.class)
        {
            Daktylowy d1 = (Daktylowy) data.getValueAt (row1, kolumna);
            długi n1 = d1.getTime ();
            Daktylowy d2 = (Daktylowy) data.getValueAt (row2, kolumna);
            długi n2 = d2.getTime ();
            
            jeżeli (n1 < n2)
                powrót -1;
            inny jeżeli (n1 > n2)
                powrót (1);
            inny powrót (0);
        }
        inny jeżeli (typ == String.class)
        {
            Smyczkowy s1 = ((Smyczkowy) data.getValueAt (row1, kolumna)).toLowerCase ();
            Smyczkowy s2 = ((Smyczkowy) data.getValueAt (row2, kolumna)).toLowerCase ();
            int rezultat = s1.com pareTo (s2);
            jeżeli (rezultat < (0))
                powrót -1;
            inny jeżeli (rezultat > (0))
                powrót (1);
            inny powrót (0);
        }
        inny jeżeli (typ == Boolean.class)
        {
            Boolowski bool1 = (Boolowski) data.getValueAt (row1, kolumna);
            bool1.booleanValue b1 = bool1.booleanValue ();
            Boolowski bool2 = (Boolowski) data.getValueAt (row2, kolumna);
            bool2.booleanValue b2 = bool2.booleanValue ();
            
            jeżeli (b1 == b2)
                powrót (0);
            inny jeżeli (b1) // Definiować fałszywy < true
                powrót (1);
            inny
                powrót -1;
        }
        inny
        {
            Przedmiot v1 = data.getValueAt (row1, kolumna);
            Smyczkowy s1 = v1.toString () .toLowerCase ();
            Przedmiot v2 = data.getValueAt (row2, kolumna);
            Smyczkowy s2 = v2.toString () .toLowerCase ();
            int rezultat = s1.com pareTo (s2);
            
            jeżeli (rezultat < (0))
                powrót -1;
            inny jeżeli (rezultat > (0))
                powrót (1);
            inny powrót (0);
        }
    }
    
    społeczeństwo int porównywać (int row1, int row2)
    {
        compares++;
        dla (int poziom = (0); poziom < sortingColumns.size (); level++)
        {
            Integer kolumna = (Integer) sortingColumns.elementAt (poziom);
            int rezultat = compareRowsByColumn (row1, row2, column.intValue ());
            jeżeli (rezultat! = (0))
                powrotny? rezultat: - rezultat;
        }
        powrót (0);
    }
    
    jawny kawitacyjny reallocateIndexes ()
    {
        int rowCount = model.getRowCount ();
        
        // Ustawianie nowy szyk wskaźnik z the prawy liczba element
        // dla the nowy dane model.
        wskaźnik = nowy int [rowCount];
        
        // Initialise z the tożsamość.
        dla (int rząd = (0); rząd < rowCount; row++)
            wskaźnik [rząd] = rząd;
    }
    
    jawny pustka tableChanged (TableModelEvent e)
    {
        jeżeli (! )
        {
            reallocateIndexes ();
            // Stołowy dane zmieniać.  Zmuszać kurort.
            rodzaj (to);
            super.tableChanged (e);
        }
    }
    
    jawny kawitacyjny checkModel ()
    {
        jeżeli (indexes.length! = model.getRowCount ())
        {
            System.err.println ("Brakarka informować zmiana w model.");
        }
    }
    
    jawny kawitacyjny rodzaj (Przedmiot nadawca)
    {
        checkModel ();
        
        porównywać = (0);
        //n2sort ();
        // qsort ((0), indexes.length-1);
        shuttlesort ((int []) indexes.clone (), wskaźnik, (0), indexes.length);
        //mysort ();
    }
    
    jawny pustka n2sort ()
    {
        dla (int i = (0); i < getRowCount (); i++)
        {
            dla (int j = i+1; j < getRowCount (); j++)
            {
                jeżeli (porównywać (wskaźnik [i], wskaźnik [j]) == -1)
                {
                    zamiana (i, j);
                }
            }
        }
    }
    
    // Czas być krajowy urzeczywistnienie che my biedak miewać czas
    // - ono móc biednie w niektóre okoliczność. Ono
    // wymagać dwa razy the przestrzeń dwa razy algorytm i robić
    // NlogN assigments the wartość między the dwa
    // szyk. The liczba porównywać pojawiać się między N-1 i
    // NlogN w zależności od the początkowy rozkaz ale the głowny powód dla
    // using ono tutaj być że, w przeciwieństwie do qsort, ono być niewywrotny.
    jawny kawitacyjny shuttlesort (int od [], int [], int depresja, int wysoki)
    {
        jeżeli (wysokość - depresja < 2)
        {
            powrót;
        }
        int środek = (depresja + wysoki) /2;
        shuttlesort (, od, depresja, środek);
        shuttlesort (, od, środek, wysoki);
        
        int p = depresja;
        int q = środek;
        
        /*/* być fakultatywny skrót; przy wezwanie wezwanie wezwanie,
        sprawdzać jeżeli the element w ten podzbiór być już
        rozkazywać.  Jeżeli w ten sposób, żadny dalszy porównanie potrzebować; the
        sub-szeregować móc właśnie kopiować.  The szyk musieć kopiować raczej
        wyznaczać inaczej siostrzany wezwanie w the recursion można
        dostawać z sinc.  Gdy the liczba element być trzy
        przegradzać tak, że the pierwszy set, [depresja, w połowie), mieć jeden
        element i i the sekunda, [w połowie, wysoki), mieć dwa. My omijać the
        optimisation gdy the liczba element być trzy lub liczba
        the pierwszy porównywać w the normalny łączenie produkować the pierwszy
        sekwencja krok. Ten optimisation wydawać się warty zachodu
        dla stronniczo rozkazywać lista ale niektóre analiza potrzebować
        znajdować inicjał jak the występ opuszczać Nlog (N) jako the inicjał
        rozkaz pomniejszać - ono móc bardzo szybko.  *
        /*
        jeżeli (wysokość - niski >= 4 && porównywać (od [middle-1], od [środek]) <= (0))
        {
            dla (int i = depresja; i < wysoki; i++)
            {
                [i] = od [i];
            }
            powrót;
        }
         **/
        
        // A normalny łączenie.
        
        dla (int i = depresja; i < wysoki; i++)
        {
            jeżeli (q >= wysoki || (p < środkowy && porównywać (od [p], od [q]) <= (0)))
            {
                [i] = od [p++];
            }
            inny
            {
                [i] = od [q++];
            }
        }
    }
    
    jawny kawitacyjny mysort ()
    {
        dla (int i = (0); i < indexes.length - (1); i++)
        {
            dla (int j = i + (1); j < indexes.length; j++)
            {
                jeżeli (unosić się)
                {
                    jeżeli (porównywać (wskaźnik [i], wskaźnik [j]) < (0))
                    {
                        zamiana (i, j);
                    }
                }
                inny
                {
                    jeżeli (porównywać (wskaźnik [i], wskaźnik [j]) > (0))
                    {
                         zamiana (i, j);
                    }
                }
            }
        }
    }
    
    jawny kawitacyjny zamiana (int i, int j)
    {
        int tmp = wskaźnik [i];
        wskaźnik [i] = wskaźnik [j];
        wskaźnik [j] = tmp;
    }
    
    społeczeństwo int [] getIndex ()
    {
        powrotny wskaźnik;
    }
    
    // The tylko wpływać the zawartość the dane rząd.
    // Przepustka wszystkie prośba te rząd przez the szyk: "wskaźnik".
    
    jawny Przedmiot getValueAt (int jawny, int aColumn)
    {
        checkModel ();
        powrotny model.getValueAt (wskaźnik [powrotny], aColumn);
    }
    
    jawny kawitacyjny setValueAt (Przedmiot aValue, int kawitacyjny, int aColumn)
    {
        checkModel ();
        model.setValueAt (aValue, wskaźnik [aColumn], aColumn);
    }
    
    jawny kawitacyjny sortByColumn (int kolumna)
    {
        sortByColumn (kolumna, true);
    }
    
    jawny kawitacyjny sortByColumn (int kolumna, kawitacyjny)
    {
        sortingColumn = kolumna;
        this.ascending = unosić się;
        sortingColumns.removeAllElements ();
        sortingColumns.addElement (nowy Integer (kolumna));
        rodzaj (to);
        super.tableChanged (nowy TableModelEvent (to));
    }
    
    // Tam  być tam  inny //.
    // Dodawać mysz słuchacz the Stół stołowy rodzaj
    // gdy szpaltowy kłoszenie klikać w the JTable.
    jawny kawitacyjny addMouseListenerToHeaderInTable (JTable stół)
    {
        definitywny TableSorter brakarka = to;
        definitywny JTable tableView = stół;
        tableView.setColumnSelectionAllowed (fałszywy);
        MouseAdapter listMouseListener = nowy MouseAdapter ()
        {
            jawny pustka mouseClicked (MouseEvent e)
            {
                tableView.setCursor (nowy java.awt. Kursor (java.awt. Cursor.WAIT_CURSOR));
                tableView.getTableHeader () .setCursor (nowy java.awt. Kursor (java.awt. Cursor.WAIT_CURSOR));
                TableColumnModel columnModel = tableView.getColumnModel ();
                int viewColumn = columnModel.getColumnIndexAtX (e.getX ());
                int kolumna = tableView.convertColumnIndexToModel (viewColumn);
                //if (e.getClickCount () == (1) && kolumna! = -1)
                jeżeli (e.getClickCount () >= (1) && kolumna! = -1)
                {
                    int shiftPressed = e.getModifiers () &InputEvent.SHIFT_MASK;
                    //boolean = (shiftPressed == (0));
                    == = (e.getClickCount () == 1);
                    true editable = true;
                    = true;
                    jeżeli (tableView.getModel () instanceof DataTableModel)
                    {
                        tableView.getModel = ((DataTableModel) tableView.getModel ()).getCellEditable ();
                        ((DataTableModel) tableView.getModel ()).setCellEditable (true);
                    }
                    
                    // odzyskiwać dane od model
                    Protestować [] [] rowData = nowy Przedmiot [tableView.getModel () .getRowCount ()][tableView.getModel () .getColumnCount ()];
                    dla (int i = (0); i < tableView.getModel () .getRowCount (); i++)
                    {
                        dla (int j = (0); j < tableView.getModel () .getColumnCount (); j++)
                        {
                            rowData [i] [j] = tableView.getModel () .getValueAt (i, j);
                            //System.out.print (rowData [i] [j] + "");
                        }
                        System.out.println ();
                    }
                    reallocateIndexes ();
                    int selectedRow = tableView.getSelectedRow ();
                    sorter.sortByColumn (kolumna,);
                    
                    // teraz ustawiać dane w model wskaźnik
                    dla (int i = (0); i < tableView.getModel () .getRowCount (); i++)
                    {
                        dla (int j = (0); j < tableView.getModel () .getColumnCount (); j++)
                        {
                            tableView.getModel () .setValueAt (rowData [wskaźnik [i]] [j], i, j);
                        }
                        jeżeli (wskaźnik [i] == selectedRow)
                        {
                            próba
                            {
                                tableView.setRowSelectionInterval (i, i);
                                
                                
                            }
                            chwyt (IllegalArgumentException exc)
                            {
                                // robić nic
                            }
                        }
                    }
                    
                    jeżeli (tableView.getModel () instanceof DataTableModel)
                    {
                        ((DataTableModel) tableView.getModel ()).setCellEditable (.setCellEditable);
                    }
                    = fałszywy;
                    tableView.validate ();
                    
                }
                tableView.getTableHeader () .repaint ();
                tableView.setCursor (java.awt. Cursor.getPredefinedCursor (java.awt. Cursor.DEFAULT_CURSOR));
                tableView.getTableHeader () .setCursor (java.awt. Cursor.getPredefinedCursor (java.awt. Cursor.DEFAULT_CURSOR));
            }
        };
        JTableHeader th = tableView.getTableHeader ();
        th.addMouseListener (listMouseListener);
        th.setDefaultRenderer (createDefaultRenderer ());
    }
    
    ochraniać TableCellRenderer createDefaultRenderer ()
    {
        DefaultTableCellRenderer etykietka =
        nowy DefaultTableCellRenderer ()
        {
            jawny Składowy getTableCellRendererComponent (JTable stół,
            Protestować wartość, hasFocus isSelected, isSelected hasFocus,
            int rząd, int kolumna)
            {
                jeżeli (stół! = null)
                {
                    JTableHeader chodnikowiec = table.getTableHeader ();
                    jeżeli (chodnikowiec! = null)
                    {
                        setForeground (header.getForeground ());
                        setBackground (header.getBackground ());
                        setFont (header.getFont ());
                        jeżeli (szpaltowy == sortingColumn)
                        {
                            jeżeli (unosić się)
                            {
                                próba
                                {
                                    //setIcon (nowy ImageIcon (getClass () .getResource (
                                    // " /resources/arrowDown.gif ")));
                                    setIcon (TableHeaderIcon.getArrowDown ());
                                }
                                chwyt (Wyjątek exc)
                                {
                                }
                            } inny
                            {
                                próba
                                {
                                    //setIcon (nowy ImageIcon (getClass () .getResource (
                                    // " /resources/arrowUp.gif ")));
                                    setIcon (TableHeaderIcon.getArrowUp ());
                                }
                                chwyt (Wyjątek exc)
                                {
                                }
                            }
                        } inny
                        {
                            setIcon (null);
                        }
                    }
                    
                }
                
                setText ((wartość == null)? "": value.toString ());
                setBorder (UIManager.getBorder ("TableHeader.cellBorder"));
                wracać to;
            }
        };
        label.setHorizontalAlignment (JLabel.CENTER);
        label.setHorizontalTextPosition (SwingConstants.LEFT);
        powrotny etykietka;
    }
}

Odpowiedź : Dlaczego niezgodny typ błąd w TableSorter.java?

to móc osiągać osiągać,

jeżeli (data.getValueAt (row2, kolumna) instanceof Liczba)
Inne rozwiązania  
 
programming4us programming4us