Implementazione di un'interfaccia da un framework vs una semplice interfaccia java

1

Questo concetto non è chiaro con me.

Ho lavorato su diversi framework per un'istanza Spring. Per implementare una funzionalità implementiamo sempre alcune interfacce fornite dal framework.

Per un'istanza se devo creare un ambito personalizzato in primavera, la mia classe implementa un'interfaccia org.springframework.beans.factory.config.Scope. Che ha alcune funzionalità di basso livello predefinite che aiutano a definire un ambito personalizzato per un bean.

Mentre in Java ho letto un'interfaccia è solo una dichiarazione che le classi possono implementare e amp; definire la propria funzionalità. I metodi di un'interfaccia non hanno funzionalità predefinite.

interface Car
{
topSpeed();
acclerate();
deaccelrate();
}

I metodi qui non hanno alcuna funzionalità. Sono appena dichiarati.

Qualcuno può spiegare questa discrepanza nel concetto? In che modo il framework mette alcune funzionalità predefinite con i metodi di interfaccia?

    
posta Shivang Sarawagi 27.01.2014 - 17:37
fonte

1 risposta

1

Non c'è differenza tra il modo in cui un framework gestisce le interfacce e il modo in cui funziona il tuo codice. Esiste un concetto chiamato Intercettazione . Spesso i framework hanno classi che intercettano le chiamate su interfacce e eseguono il proprio codice prima o dopo l'esecuzione dell'implementazione.

Un modo semplice di eseguire l'intercettazione in un framework che stai scrivendo sarebbe utilizzare il schema di decorazione . Molti framework DI forniscono un mezzo per fare intercettazione e usano metodi più sofisticati per realizzarlo, ad esempio attraverso l'uso della riflessione.

    
risposta data 27.01.2014 - 19:30
fonte

Leggi altre domande sui tag