Java - Interfaces

 
Vista:
sin imagen de perfil

Interfaces

Publicado por Victor (2 intervenciones) el 22/04/2017 11:09:27
Buenas, tengo la siguiente duda: antes que nada les muestro el diagrama UML de clases.

uml

Mi duda es ¿por qué en la clase principal, si yo por ejemplo hago la siguiente sentencia:
ITransferencia com = new Condensador("Condensador");
no me sale ningun error? Me explico, en las interfaces no se puede instanciar objetos de las interfaces propiamente dicho, pero por que yo si me declaro una interfaz puedo instanciar componentes? ya que la interfaz no hereda de ningun lado, solo la implementen las clases de componentes, entonces no lo entiendo mucho, a ver si me podeis echar una mano. Gracias de antemano.
Un saludo.
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

Interfaces

Publicado por Jordi (135 intervenciones) el 22/04/2017 14:10:04
No sé mucho de java y domino relativamente poco el tema de las interfaces, pero creo que es por el polimorfismo que te permite hacer eso.
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

Interfaces

Publicado por Tom (1831 intervenciones) el 22/04/2017 18:25:26
Trata de aprender algo más sobre Java.
https://docs.oracle.com/javase/tutorial/java/concepts/interface.html
https://docs.oracle.com/javase/tutorial/java/IandI/createinterface.html

Cuando tú "haces esa sentencia" estás instanciando un objeto de la clase Condensador.
La clase Condensador implementa el interface ITransferencia, y un interface no deja de ser un nuevo tipo, así que es lo mismo que si asignas a un tipo de clase base un objeto de subclase ...
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

Interfaces

Publicado por Jordi (135 intervenciones) el 22/04/2017 19:00:54
Yo también voy a leerme los artículos a ver que aprendo, :p grácias.
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