Home Foros Foro dudas Foro de Java ¿Por qué se puede utilizar JButton en una clase que está heredada de JFrame? Respuesta a: ¿Por qué se puede utilizar JButton en una clase que está heredada de JFrame?

Respuesta a: ¿Por qué se puede utilizar JButton en una clase que está heredada de JFrame?

Home Foros Foro dudas Foro de Java ¿Por qué se puede utilizar JButton en una clase que está heredada de JFrame? Respuesta a: ¿Por qué se puede utilizar JButton en una clase que está heredada de JFrame?

#15787

Santos
Participante

Creo que puede ser por este motivo:

Cuando tu importas una clase (JButton, Calendar, Color, etc..) quiere decir que tu vas a hacer uso de esa clase para tus propios fines en cualquier parte de tu programa independientemente de la clase en la que la utilices.

Si tu creas una clase Vehículo y en ella hay una variable de instancia GregorianCalendar, quiere decir que tu instancia de Vehículo tiene un atributo que es una fecha de fabricación (GregorianCalendar), como tendrá otro que puede ser un String con su modelo, otro tipo para su color (Color), etc.. Pero tu Vehículo “no es” una fecha, un color, o un nombre… si no que son atributos de las instancias de esta.

Cuando tu creas una clase propia y extends (heredas) de otra, quiere decir que tu clase “es un” de la que heredas… Si creas una clase Camión y esta hereda de Vehículo, tu camión “es un” vehículo y poseerá entre otros, los atributos de vehículo. Y podrás hacer uso además de los métodos que Vehículo posea.

Esto heredando de cases propias, si por el contrario (extends) heredas de clases de la API de java, por ejemplo JFrame, quiere decir que tu clase “es un” marco JFrame, y como tal tendrá sus campos de atributos, sus métodos, sus constructores, etc..

Volviendo al ejemplo del Camión. Si tu clase Camión extends JButton  y  extends Vehiculo.  Incumple la norma de la herencia en java de “Es un” ya que tu Camión no puede ser las dos cosas a la vez. En cambio, si import JButton, tu camión puede tener una instancia de JButton que le permita por ejemplo, arrancar.

 

Saludos, y primero espero haberlo entendido yo bien 🙂 y segundo, si es así, espero que que te sirva para entenderlo a ti.