Differenza Tra Rilegatura Precoce E Tardiva

Sommario:

Differenza Tra Rilegatura Precoce E Tardiva
Differenza Tra Rilegatura Precoce E Tardiva

Video: Differenza Tra Rilegatura Precoce E Tardiva

Video: Differenza Tra Rilegatura Precoce E Tardiva
Video: Libro Rilegato o in Brossura? Differenze e cosa comprare #StudioNoesis #TavolaRotonda #Libri 2024, Novembre
Anonim

Differenza chiave: rilegatura anticipata o tardiva

Early Binding e Late Binding sono due concetti correlati al polimorfismo. L'associazione anticipata si verifica in fase di compilazione mentre l'associazione tardiva si verifica in fase di esecuzione. La differenza fondamentale tra Early Binding e Late Binding è che Early Binding utilizza le informazioni sulla classe per risolvere la chiamata al metodo mentre Late Binding utilizza l'oggetto per risolvere la chiamata al metodo.

I linguaggi di programmazione come Java supportano la programmazione orientata agli oggetti (OOP). È un paradigma che consente di costruire il programma o il software utilizzando gli oggetti. Ci sono più oggetti nel software. Questi oggetti sono collegati tra loro e passano messaggi utilizzando metodi. Ogni oggetto ha caratteristiche e comportamenti. Le caratteristiche sono descritte dalle proprietà o dagli attributi. I comportamenti sono descritti utilizzando metodi. L'oggetto Studente può avere caratteristiche come nome, età e sono rappresentate da proprietà. L'oggetto Studente può avere comportamenti come studiare e leggere e sono rappresentati da metodi. Uno dei pilastri principali dell'OOP è il polimorfismo. Consente a un oggetto di comportarsi in più modi. Early Binding e Late Binding sono due concetti in Polymorphism. I metodi di sovraccarico vengono collegati utilizzando l'associazione anticipata. I metodi sostituiti vengono collegati utilizzando l'associazione tardiva.

CONTENUTI

1. Panoramica e differenze principali

2. Cos'è il binding anticipato

3. Cos'è il binding tardivo

4. Somiglianze tra binding anticipato e tardivo

5. Confronto affiancato - binding anticipato vs tardivo in forma tabulare

6. Riepilogo

Cos'è il binding anticipato?

In Early Binding, le informazioni sulla classe vengono utilizzate per risolvere la chiamata al metodo. L'associazione anticipata si verifica in fase di compilazione. È anche noto come associazione statica. In questo processo, l'associazione si verifica prima che il programma venga effettivamente eseguito. I metodi di sovraccarico vengono collegati utilizzando l'associazione anticipata. Fare riferimento al programma seguente.

Differenza tra rilegatura precoce e tardiva
Differenza tra rilegatura precoce e tardiva

Figura 01: classe di calcolo

Differenza tra rilegatura anticipata e tardiva Figura 02
Differenza tra rilegatura anticipata e tardiva Figura 02

Figura 02: programma principale per l'associazione anticipata

Secondo il programma precedente, la classe Calculation contiene un metodo add che accetta due valori interi e un altro metodo add che accetta due valori double. Nel programma principale viene creato un oggetto di tipo Calcolo. Quando si passano due interi al metodo add, verrà richiamato il metodo add che accetta due interi. Quando si passano due valori double al metodo add, richiamerà il metodo corrispondente a due valori double. Questo processo di associazione si verifica in fase di compilazione. Tutte le informazioni richieste sono note prima del runtime, quindi aumenta l'efficienza del programma e la velocità di esecuzione.

Cos'è il Late Binding?

In Late Binding, l'oggetto viene utilizzato per risolvere la chiamata al metodo. L'associazione tardiva si verifica in fase di esecuzione. È anche noto come associazione dinamica. In questo processo, l'associazione avviene durante l'esecuzione del programma. I metodi sostituiti vengono collegati utilizzando l'associazione tardiva. Fare riferimento al programma seguente.

Differenza tra rilegatura anticipata e tardiva Figura 03
Differenza tra rilegatura anticipata e tardiva Figura 03

Figura 03: classe di forma

Differenza tra rilegatura anticipata e tardiva Figura 04
Differenza tra rilegatura anticipata e tardiva Figura 04

Figura 04: classe Circle

Differenza tra rilegatura anticipata e tardiva Figura 05
Differenza tra rilegatura anticipata e tardiva Figura 05

Figura 05: classe triangolo

Differenza chiave tra rilegatura anticipata e tardiva
Differenza chiave tra rilegatura anticipata e tardiva

Figura 06: programma principale per Late Binding

Secondo il programma sopra, la classe Shape ha un metodo di disegno. Class Circle e class Triangle estendono la classe Shape. Pertanto, queste due classi possono ereditare gli attributi ei metodi della classe Shape. Shape Class è la classe base. Le classi Circle e Triangle sono classi derivate. Anche la classe Circle e la classe Triangle hanno il metodo draw con le proprie implementazioni. Quindi, il metodo draw nella classe Shape viene sovrascritto dai metodi draw delle classi derivate.

Nel programma principale viene creata una variabile di riferimento s di tipo Shape. In fase di compilazione, il compilatore farà riferimento solo al metodo di estrazione della classe base. In fase di esecuzione, verranno eseguiti diversi metodi di disegno. Primo, s punterà all'oggetto di tipo Shape. Quindi, viene richiamato il metodo draw della classe Shape. Quindi la s punterà all'oggetto di tipo Circle e invocherà il metodo draw della classe Circle. Infine, s punterà all'oggetto di tipo Triangle e invocherà il metodo draw nella classe Triangle. I metodi vengono chiamati a seconda degli oggetti. Pertanto, l'oggetto viene utilizzato per risolvere la chiamata al metodo in Late Binding. Le informazioni richieste per l'associazione vengono fornite in fase di esecuzione, quindi la velocità di esecuzione è più lenta rispetto all'associazione anticipata.

Qual è la somiglianza tra il binding anticipato e quello tardivo?

Sia Early Binding che Late Binding sono correlati al polimorfismo che è un pilastro dell'OOP

Qual è la differenza tra il binding anticipato e quello tardivo?

Articolo diff. Al centro prima della tabella

Rilegatura anticipata vs Rilegatura tardiva

Il processo di utilizzo delle informazioni sulla classe per risolvere la chiamata al metodo che si verifica in fase di compilazione è denominato Early Binding. Il processo di utilizzo dell'oggetto per risolvere la chiamata al metodo che si verifica in fase di esecuzione è denominato Late Binding.
Tempo di rilegatura
L'associazione anticipata avviene in fase di compilazione. Il binding tardivo avviene in fase di esecuzione.
Funzionalità
Early Binding utilizza le informazioni sulla classe per risolvere la chiamata al metodo. L'associazione tardiva utilizza l'oggetto per risolvere la chiamata al metodo.
Sinonimi
Early Binding è noto anche come binding statico. L'associazione tardiva è anche nota come associazione dinamica.
Evento
I metodi di sovraccarico vengono collegati utilizzando l'associazione anticipata. I metodi sostituiti vengono collegati utilizzando l'associazione tardiva.
Velocità di esecuzione
La velocità di esecuzione è più veloce nel binding anticipato. La velocità di esecuzione è inferiore nel binding tardivo.

Riepilogo: associazione anticipata vs rilegatura tardiva

OOP è comunemente usato per lo sviluppo del software. Uno dei pilastri principali dell'OOP è il polimorfismo. Early Binding e Late Binding sono correlati a questo. L'associazione anticipata si verifica in fase di compilazione mentre l'associazione tardiva si verifica in fase di esecuzione. Nel sovraccarico del metodo, il legame avviene utilizzando l'associazione anticipata. Nella sostituzione del metodo, il legame avviene utilizzando il legame tardivo. La differenza tra Early Binding e Late Binding è che Early Binding utilizza le informazioni sulla classe per risolvere la chiamata al metodo mentre Late Binding utilizza l'oggetto per risolvere la chiamata al metodo.

Raccomandato: