Come utilizzare la composizione in Java con esempi?

Come Utilizzare La Composizione In Java Con Esempi



La composizione consente ai programmatori di riutilizzare le classi esistenti integrandole in nuove classi. Invece di duplicare il codice da più classi che migliora la riusabilità del codice. Inoltre, la composizione offre flessibilità nella combinazione di oggetti in base ai requisiti ricevuti di una classe. Inoltre promuove la modularità e rende il codice più adattabile ai cambiamenti.

Questo articolo mostra una spiegazione dettagliata della composizione in Java con l'aiuto di esempi.







Come utilizzare la composizione in Java con esempi?

La composizione promuove l'accoppiamento libero tra le classi. Agli oggetti composti si accede tramite interfacce, classi astratte o superclassi, che disaccoppiano la classe client dalle implementazioni specifiche. Ciò migliora la manutenibilità del codice e consente test e refactoring più semplici.



Visita l'esempio seguente per una migliore comprensione della composizione in Java:



Esempio: implementazione del concetto di composizione in Java





Per implementare il concetto di composizione inizia con la creazione di due o più classi che ereditano la funzione e metodi per ridurre il tempo e la complessità del codice come mostrato di seguito:

motore di classe {
stringa privata tipo ;
Motore pubblico ( Corda tipo ) {
this.type = tipo ;
}
inizio vuoto pubblico ( ) {
System.out.println ( tipo + 'Motore avviato' ) ;
}
fermata del vuoto pubblico ( ) {
System.out.println ( tipo + 'Motore fermo' ) ;
}
}
classe Bici {
versione stringa privata;
motore privato;
Bici pubblica ( Versione stringa, motore motore )
{
this.versione = versione;
this.engn = motore;
}
public void startBike ( ) {
System.out.println ( 'Avviare la moto' + versione ) ;
engn.start ( ) ;
}
vuoto pubblico stopBike ( ) {
System.out.println ( 'Fermare la bici' + versione ) ;
engn.stop ( ) ;
}
}



Spiegazione del codice precedente:

  • Innanzitutto, crea una classe denominata ' Motore ” e richiamare il costruttore predefinito che porta un parametro di tipo String denominato “ tipo ”.
  • Successivamente, dichiara due funzioni denominate ' inizio() ' E ' fermare() ” che stampano messaggi fittizi sulla console.
  • Quindi, crea una nuova classe denominata ' Bicicletta ” e viene utilizzato il costruttore di default che contiene come parametro la variabile e l'oggetto della suddetta classe.
  • Inoltre, imposta questi parametri come valori per le variabili e gli oggetti creati all'interno della classe 'Bike'. Rende i valori accessibili all'interno della classe.
  • Successivamente, vengono create due funzioni denominate ' startBike() ' E ' stopBike() ” che stampano un messaggio fittizio.
  • Alla fine, chiama le funzioni create nel ' Motore ” class utilizzando il suo oggetto denominato “ ing ”.

Ora, inserisci il ' principale() ” metodo per far funzionare il codice sopra indicato:

classe pubblica Composizione {
public static void main ( Corda [ ] arg ) {
Motore Nessuno = nuovo motore ( 'YBR' ) ;
Bici bik = nuova bici ( 'Bici pesante' , Nessuno ) ;
bik.startBike ( ) ;
bik.stopBike ( ) ;
}
}

Spiegazione del codice precedente:

  • In primo luogo, l'oggetto del “ Motore ” la classe viene creata con il nome “ Nessuno ” e un valore di tipo String casuale viene passato al suo costruttore.
  • Quindi, crea un oggetto per ' Bicicletta 'classe denominata' particolare ”. Successivamente, passa il valore del tipo String lungo l'oggetto di classe 'Engine' come argomento al suo costruttore.
  • Alla fine, chiama il ' startBike() ' E ' stopBike() ” funzioni utilizzando il “ particolare oggetto.

Dopo l'esecuzione del frammento di codice sopra:

L'istantanea sopra mostra che i dati vengono recuperati utilizzando il concetto di composizione.

Utilizzo in tempo reale della composizione

Esistono molte applicazioni in tempo reale in cui il concetto di composizione gioca un ruolo fondamentale. Alcuni di questi

gli usi sono scritti di seguito:

  • In ' Sviluppo GUI ”, la composizione è comunemente usata per creare componenti UI complessi. Ad esempio, una classe Window può comporre oggetti come Button, Label e Text Field.
  • IL ' Iniezione di dipendenza I framework, come Spring, utilizzano pesantemente la composizione per iniettare dipendenze negli oggetti.
  • La composizione è ampiamente usata in “ Progettazione dell'applicazione ” per modellare relazioni complesse tra oggetti come Cliente, Transazione e Saldo per rappresentare un conto bancario con funzionalità correlate
  • La composizione è fondamentale in “ Sviluppo basato su componenti ”, dove i componenti riutilizzabili sono composti per creare sistemi più grandi.
  • La composizione viene utilizzata in varie strutture di dati per combinare strutture di dati più semplici per formarne di più complesse.

Conclusione

La composizione viene utilizzata per creare oggetti complessi unendo oggetti semplici. Consente ai programmatori di stabilire relazioni tra classi basate sul ' ha un ” relazione, in cui la prima classe contiene un'istanza della seconda classe. Utilizzando il concetto di composizione, il programmatore può ottenere progetti modulari, riutilizzabili e flessibili componendo oggetti con comportamenti specifici.