Como usar composição em Java com exemplos?

Como Usar Composicao Em Java Com Exemplos



A composição permite que os programadores reutilizem classes existentes integrando-as em novas classes. Em vez de duplicar o código de várias classes, o que aumenta a reutilização do código. Além disso, a composição fornece flexibilidade na combinação de objetos com base nos requisitos recebidos de uma classe. Também promove a modularidade e torna o código mais adaptável às mudanças.

Este artigo demonstra uma explicação detalhada da composição em Java com a ajuda de exemplos.







Como usar composição em Java com exemplos?

A composição promove um acoplamento frouxo entre as classes. Os objetos compostos são acessados ​​por meio de interfaces, classes abstratas ou superclasses, que desacoplam a classe cliente das implementações específicas. Isso aumenta a capacidade de manutenção do código e permite testes e refatorações mais fáceis.



Visite o exemplo abaixo para entender melhor a composição em Java:



Exemplo: Implementando o conceito de composição em Java





Para implementar o conceito de composição, comece criando duas ou mais classes que herdam a função e métodos para reduzir o tempo e a complexidade do código, conforme mostrado abaixo:

motor de classe {
String privada tipo ;
motor público ( Corda tipo ) {
este.tipo = tipo ;
}
início vazio público ( ) {
System.out.println ( tipo + 'Motor ligado' ) ;
}
parada pública vazia ( ) {
System.out.println ( tipo + 'Motor parado' ) ;
}
}
aula de bicicleta {
versão String privada;
motor privado eng;
bicicleta pública ( Versão da string, motor do motor )
{
esta.versão = versão;
this.engn = motor;
}
public void startBike ( ) {
System.out.println ( 'Dar partida na moto' + versão ) ;
engn.start ( ) ;
}
public void stopBike ( ) {
System.out.println ( 'Parando a moto' + versão ) ;
engn.stop ( ) ;
}
}



Explicação do código acima:

  • Primeiro, crie uma classe chamada “ Motor ” e chame o construtor padrão que traz um parâmetro do tipo String chamado “ tipo ”.
  • Em seguida, declare duas funções denominadas “ começar() ' e ' parar() ” que imprime mensagens fictícias no console.
  • Em seguida, crie uma nova classe chamada “ Bicicleta ” e é utilizado o construtor padrão que contém a variável e o objeto da classe acima como parâmetro.
  • Além disso, defina esses parâmetros como valores para variáveis ​​e objetos criados dentro da classe “Bike”. Ele torna os valores acessíveis dentro da classe.
  • Depois disso, duas funções são criadas com o nome “ startBike() ' e ' stopBike() ” que imprime uma mensagem fictícia.
  • No final, chama as funções criadas no “ Motor ” classe usando seu objeto chamado “ engn ”.

Agora, insira o “ principal() ” para fazer o código acima indicado funcionar:

composição de classe pública {
public static void principal ( Corda [ ] argumentos ) {
Motor Ninguém = novo Motor ( 'YBR' ) ;
Bicicleta bik = Bicicleta nova ( 'Bicicleta Pesada' , Ninguém ) ;
bik.startBike ( ) ;
bik.stopBike ( ) ;
}
}

Explicação do código acima:

  • Em primeiro lugar, o objeto do “ Motor ” classe é criada com o nome “ Ninguém ” e um valor de tipo String aleatório é passado para seu construtor.
  • Em seguida, crie um objeto para o “ Bicicleta ” classe chamada “ especial ”. Depois disso, passe o valor do tipo String junto com o objeto da classe “Engine” como um argumento para seu construtor.
  • No final, ligue para o “ startBike() ' e ' stopBike() ” funções usando o botão “ especial ”objeto.

Após a execução do trecho de código acima:

O instantâneo acima mostra que os dados são recuperados usando o conceito de composição.

Uso de composição em tempo real

Existem muitas aplicações em tempo real onde o conceito de composição desempenha um papel vital. Alguns desses

usos estão escritos abaixo:

  • Em ' Desenvolvimento de GUI ”, a composição é comumente usada para criar componentes de interface do usuário complexos. Por exemplo, uma classe Window pode compor objetos como Button, Label e Text Field.
  • O ' Injeção de dependência ” frameworks, como Spring, utilizam fortemente a composição para injetar dependências em objetos.
  • A composição é amplamente utilizada em “ Design de aplicativos ” para modelar relacionamentos complexos entre objetos como Cliente, Transação e Saldo para representar uma conta bancária com funcionalidades relacionadas
  • A composição é fundamental em “ Desenvolvimento Baseado em Componentes ”, onde componentes reutilizáveis ​​são compostos para criar sistemas maiores.
  • A composição é usada em várias estruturas de dados para combinar estruturas de dados mais simples para formar outras mais complexas.

Conclusão

A composição é utilizada para criar objetos complexos mesclando objetos simples. Ele permite que os programadores estabeleçam relacionamentos entre as classes com base no “ tem um ” relacionamento, no qual a primeira classe contém uma instância da segunda classe. Ao usar o conceito de composição, o programador pode obter designs modulares, reutilizáveis ​​e flexíveis compondo objetos com comportamentos específicos.