Conceptos de programacion JTable

que tal tengo una duda algo curiosa o igual y tonta pero en fin no se jaja..ando un poco oxidado ya de conceptos y parezco mono aplastando teclas y a programar xD

la cuestión es esta siempre he sabido que si hacemos lo siguiente

javax.swing.JTable tabla = new javax.swing.JTable()
                {
                       
                        private static final long serialVersionUID = 1L;

                        public boolean isCellEditable(int rowIndex, int vColIndex)
                        {
                                return false;
                        }
                };

podemos hacer que las celdas no sean editables..

pero como definiríamos lo que estoy haciendo ahí? me refiero a conceptos de programación..
estoy redefiniendo un método o que estoy haciendo exactamente.

gracias (duda existencial)

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de neko069

Sobre escritura

Yo tengo entendido que es sobre escritura del método, es decir, dejas la misma firma pero el comportamiento cambia. Y creo (que alguien me corrija) que redefinición de método es que, por ejemplo el método  isCellEditable fuera privado y tu lo declaras en una subclase, entonces lo estarías redefiniendo.

Imagen de genitalico

es cierto creo que tienes

es cierto creo que tienes razon igual alguien mas tiene otra idea.. redefinir seria como dices tener privado el metodo, heredar por ejemplo y "redefinirlo" haciendo otras funciones, pero supongamos que tenemos una clase que heredamos o creamos en un objeto si tenemos un metodo privado no se supondia que no lo conocemos?
claro si programamos todo nosotros si, pero en caso de que nos pasen una libreria ese metodo quedaria oculto para nosotros y no podriamos redefinirlo ya que no sabemos de su existencia seria coincidencia supongo hacer eso..

supongo que no aplicaria ahi o si?

Imagen de neko069

Pues si.

Pero... éso ya no tiene que ver no? digo, estamos de acuerdo en el concepto, y aunque sea coincidencia, sería al fin una redefinición.

Lo que estás haciendo es una

Lo que estás haciendo es una subclase ( que además es anónima e interna, esto último concepto es único de Java AFAIK - lo de anónimo e interno pues - )

Al hacer una subclase, estás "especializando" el comportamiento, en este caso del método: isCellEditable( row, col ):Boolean y si, estás sobreescribiendolo.

Desde la version ... mmhh Java 5 creo, es recomendable utilizar la anotación @Override

@Override
public boolean isCellEditable(int rowIndex, int vColIndex) {
   return false;
}

Esto le da un "hint" al compilador para que tu, programador le digas: "Hey, quiero sobreescribir ese método" y evitar que por un error de dedo no veas el resultado esperado, ejemplo:

public boolean isCelEditable( int r, int c ) {
}

Como le falta una 'l' lo que pasa en realidad es que estás definiendo un nuevo método que nadie va a llamar. Luego de algunas horas de debug dices: Duh.. me faltó una l.

Al ponerle @Override el compilador dice: "No hay un método llamado isCelEditable que sobreescribir, no te habrás equivocado?" ( bueno algo así )

Y ya.

Imagen de genitalico

ohhh bien entiendo, ya me

ohhh bien entiendo, ya me quedo mas claro esta onda..
ahora una pregunta estas cosas donde las puedo encontar? me refiero a lo que nos explicaste.. supongo que lo tuyo ya es conocimiento de experiencia pero por ejemplo yo estuve busque y busque y no encontre mi respuesta por ello me anime a preguntar..
entonces uno que no sabe por donde podemos empezar aprender esos conceptos..

un saludo

Si, no están tan específicos,

Si, no están tan específicos, pero en los conceptos de programación orientada a objetos viene. Ahora mismo ha decrecido el interés porque la moda esta en la programación funcional, pero aún hay muchos conceptos de la OOP donde se explica esto y otras cosas.

Imagen de genitalico

mmmm entonces tendre que

mmmm entonces tendre que darle una buena repasada a los conseptos de POO
muchas gracias