This is a draft cheat sheet. It is a work in progress and is not finished yet.
Referencias a la clase base
Una referencia puede apuntar a objetos de la clase de su definición y a objetos que sean instancia de cualquiera de sus derivadas |
Base p = new Derivada();
|
Una referencia a la clase base puede acceder únicamente a los miembros definidos en la clase base. |
Operador instanceof
El operador instanceof devuelve un boolean indicando si un objeto es instancia de una clase |
referencia instanceof Clase
|
Dado que devuelve un boolean suele ser usado como condición para un if |
Consultar si una referencia es instancia de la clase base siempre devuelve true, ya que los objetos de las derivadas siempre son objetos de la base (por la definición "es un") |
Solo tiene sentido usar instanceof con clases derivadas. |
instanceof con una clase derivada indica si un objeto es instancia de esa clase |
Si instanceof devuelve falso es porque el objeto es instancia de la clase base o de otra derivada |
|
obj instanceof Base true (siempre es true con la clase base) |
obj instanceof Derivada1 false (es instancia de Derivada1) |
obj instanceof Derivada2 false (no es instancia de Derivada2) |
|
|
|