Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

514
Visualizações
¿Para qué sirve @Inject en Kotlin?

He leído lo que dice la anotación, pero soy un poco tonto, así que no pude entender correctamente

Identifica constructores, métodos y campos inyectables. Puede aplicarse a miembros estáticos y de instancia. Un miembro inyectable puede tener cualquier modificador de acceso (privado, paquete-privado, protegido, público). Primero se inyectan los constructores, seguidos de los campos y luego los métodos. Los campos y métodos de las superclases se inyectan antes que los de las subclases. No se especifica el orden de inyección entre campos y entre métodos de la misma clase.

¿Puedes explicarme para qué sirve @Inject? Si es posible con una analogía de la vida real con algo menos abstracto

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

@Inject es una anotación de Java para describir las dependencias de una clase que forma parte de Java EE (ahora llamado Jakarta EE). Es parte de CDI (Contexts and Dependency Injection), que es un marco de inyección de dependencia estándar incluido en Java EE 6 y superior.

La característica más notoria de CDI es que le permite inyectar dependencias en clases de clientes. ¿Qué quiero decir con dependencias? Es básicamente lo que su clase necesita para hacer lo que sea necesario.

Déjame darte un ejemplo para que sea más fácil de entender. Imagine que tiene una clase NotificationService que se supone que envía notificaciones a las personas en diferentes formatos (en este caso, correo electrónico y sms). Para esto, probablemente le gustaría delegar el acto real de enviar las notificaciones a clases especializadas capaces de manejar cada formato (supongamos que EmailSender y SmsSender ). Lo que @Inject le permite hacer es definir puntos de inyección en la clase NotificationService . En el siguiente ejemplo, @Inject le indica a CDI que inyecte objetos de implementación de EmailSender y SmsSender a través del constructor.

 public class NotificationService { private EmailSender emailSender; private SmsSender smsSender; @Inject public NotificationService(EmailSender emailSender, SmsSender smsSender) { this.emailSender = emailSender; this.smsSender = smsSender; } }

También es posible inyectar una instancia de una clase en campos (inyección de campo) y setters (inyección de setter), no solo como se muestra arriba en los constructores.

Uno de los marcos JVM más famosos que aprovecha este concepto de inyección de dependencia es Spring.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda