Java - Confuso con clases Abstractas

 
Vista:
sin imagen de perfil
Val: 20
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Confuso con clases Abstractas

Publicado por luis (22 intervenciones) el 03/10/2019 16:53:50
Hola, pues siguiendo con el estudio de las clases tengo unas dudas, por ejemplo viendo la clase abstracta Calendar en la que estaba ultimamente veo en la api un metodo abstracto de dicha clase:

public abstract void add(int field, int amount)

Ese metodo de dicha clase parece implementado, no somos nosotros los que le deberiamos de dar la implementacion? es decir ese metodo deberia de estar vacio en su cuerpo.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 20
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Confuso con clases Abstractas

Publicado por luis (22 intervenciones) el 03/10/2019 18:23:28
Si gracias, por eso mi comentario, ese metodo abstracto de la clase Calendar parece implementado, al repasar la API es un metodo que podemos ejecutar, cosa que no deberia de ser asi, es decir nosotros tendriamos que darle el codigo al metodo:

public abstract void add(int field, int amount)

de ahi mi pregunta, ese metodo que escribi arriba deberiamos implementarlo nosotros, cierto? ya que deberia estar sin cuerpo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 755
Bronce
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Confuso con clases Abstractas

Publicado por Yamil Bracho (2315 intervenciones) el 03/10/2019 18:55:59
Si tienes un metodo marcado como abstract eso indica que lo debe implementar la clase hija.
Con Calendar tienes un metodo que se llama getInstance que te retorna un objeto de la clase Calendar peo que internamenet usas las clases derivadas de Calendar y concertas como son GregorianCalendar, etc.
Es decir que cuando hacers Calendar cal = Calendar.getInstance90 lo qu ete esta retornando es una clase concreat ederivada de Calendar y por eso tiene la funcionabilidad de los metodos marcados como abstractos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 20
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Confuso con clases Abstractas

Publicado por luis (22 intervenciones) el 03/10/2019 19:00:07
Ok gracias, ahora repasando la API me di cuenta, es decir cuando utilizamos el metodo que escribi anteriormente no estamos utilizando el de la clase Calendar, sino el de la subclase GregorianCalendar que ya implementa dicho metodo. Gracias por las respuestas.

SALUDOS
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar