viernes, 17 de abril de 2009

Una pregunta interesante


Hoy estaba preparando una guía de ejercicios para mi curso de Programación Orientada a Objetos y dentro de mis inventos elaboré el código que se encuentra en la figura (clic para ampliar la imagen)



Primero, se puede preguntar si es válido el tratar de ejecutar el código de la figura de la izquieda.

Luego, se puede preguntar si es válido el código de la imagen anterior y responder luego por lo que imprime y, como siempre, la pregunta más interesante de todas ... ¿podemos justificar la respuesta?

Responder a este tipo de preguntas justifica el conocimiento REAL que se tiene de los conceptos de OO aplicados a un lenguaje de programación.

Saludos

sábado, 11 de abril de 2009

Ranking de los lenguajes de programación

Miren este link de los índices de popularidad de los lenguajes de programación.

Ahora, ya que Java está en el inicio de la lista :-o jeje, miren este código (clic en la imagen para ampliarla ;-) ):

¿Qué se supone que debería imprimir? y la pregunta más importante e interesante es ¿por qué imprime eso?

La respuesta apunta por entender la forma de operar de los métodos de clase respecto de la forma de los métodos de instancia. Agregguemos a eso las declaraciones en distintos niveles de la jerarquía de clases.

Lo otro interesante es probar realizando los siguientes cambios:

  • Quitando el 'static' del methodA(Base b) y
  • Cambiando: Derived d = new Derived(); por: Base d = new Derived();

¿Cambia en algo la salida?, independiente de si cambia o no, ¿podemos justificar la salida?

En el próximo post va la explicación ... mientras tanto, tratemos de entender el comportamiento de los métodos de clase.

Bye