2011-08-12 3 views
3

quelqu'un me expliquer ce que fait ce code signifie:Explication Pour le code? Veuillez

table = new JTable(){ 
     public boolean isCellEditable(int arg0, int arg1) { 
      return true; 
     } 
    }; 
+0

Quelle partie (s) Ne comprends-tu pas? – stakx

+3

Les gens abusent vraiment de la downvote ... C'est une question légitime ... –

+2

@Luchian, c'était moi qui downvoted. Ce n'est pas clair exactement ce que l'OP doit expliquer. Ne sait-il pas ce qu'est un "JTable"? Ne comprend-il pas la définition «en ligne» d'une méthode, c.-à-d. la * syntaxe *? Ne comprend-il pas ce que le code * fait *? Si c'est le dernier, un peu de contexte autour de ce bit de code pourrait aussi avoir été utile. – stakx

Répondre

2

Pensez comme:

class MyJTable extends JTable 
{ 
    public boolean isCellEditable(int arg0, int arg1) { 
     return true; 
    } 
} 
table = new MyJTable; 
4

Il est un anonymous class, qui dans ce cas a fourni une mise en œuvre pour la méthode isCellEditable de JTable qui retourne toujours true.

0

Quels que soient les arguments que vous passez à isCellEditable de cette instance de JTable, il retournera toujours true. Ce comportement n'est pas celui par défaut dans JTable, vous devez donc remplacer ce comportement de votre instance.

(Si vous vouliez dire « pourquoi quelqu'un faire ça », il devrait vous obtenir un JTable dans lequel chaque cellule est modifiable)