Eventuali duplicati:
What does it mean to “program to an interface”?
Interface vs Abstract Class (general OO)confusi su interfaccia Java
io sono di nuovo da imparare JAVA e ora sono confuso su interfaccia. Ho cercato e letto molti materiali, ma non è ancora chiaro.
Quando cerco di trovare alcune informazioni sull'interfaccia, vedo molte persone parlare della relazione tra interfaccia e classe astratta. Ma non so nemmeno perché contrastano questi due. Perché penso che la classe astratta sia usata per dire ad altre persone che non puoi creare un oggetto di questa classe astratta e se vuoi, devi modificare la classe astratta. Questo è qualcosa sull'ereditarietà, giusto?
Ma non conosco il significato di interfaccia. C'è un interface a
e se uno class B
implementa l'interfaccia a, deve utilizzare la parola riservata class B implements a
e quindi completare tutti i metodi richiesti dall'interfaccia. Ma la mia domanda è, se la classe B deve completare tutti i metodi da sola, qual è il significato dell'interfaccia? Penso che non ne abbiamo bisogno. Non lo capisco molto. Ho letto molte frasi come: "l'interfaccia può riflettere il pensiero centrale del linguaggio orientato agli oggetti", "l'interfaccia può aiutare a rendere il programma più semplice" e così via. Ma non riesco davvero a capire il significato.
Quindi, qualcuno può mostrarmi qualche esempio per capire l'interfaccia? Oppure puoi dirmi qualche link utile o i libri che descrivono chiaramente l'interfaccia. Spero davvero di capirlo. GRAZIE!
può aiutare a esplorare di più sulle interfacce in java: http://stackoverflow.com/questions/383947/what-does-it-mean-to-program-to-an-interface – Jimmy
L'unico scopo di un l'interfaccia è quella di ottenere * il comportamento del protocollo definito pubblicamente *, il che significa che la classe che eredita l'interfaccia deve incorporare tutti i metodi definiti da tale interfaccia è una regola o più specificamente è * una definizione di protocollo * per quella classe. (Ogni cosa definita all'interno dell'interfaccia deve essere comunque pubblica). – Lion