PDA

Visualizza la versione completa : [DELPHI] Definire un'interfaccia


denis76
13-06-2007, 16:10
In Java è possibile definire un'interfaccia contenente una serie di metodi.
In questo modo una classe che implementerà una o più interfacce dovrà implementare tutti i metodi definiti nelle varie interfacce.
E' possibile fare la stessa cosa anche in Delphi (senza definire una classe astratta da estendere)?


Grazie mille, Denis.

alka
15-06-2007, 03:27
C'è la parola chiave interface, utilizzata anche all'interno della VCL.

Va detto che l'uso delle interfacce in Delphi ha lo stesso significato ma è meno diffuso in quanto sono state introdotte per supportare la tecnologia COM, e pertanto si portano dietro ancora oggi alcuni "risvolti" tipici di questa architettura, come il reference counting (gli oggetti referenziati tramite interfacce vengono distrutti quando non vi sono più riferimenti ad essi).

In breve, vanno usate con cautela o dopo aver approfondito tutti i possibili problemi che si possono incontrare, facendo ovviamente riferimento alla Guida in linea.

Ciao! :ciauz:

paurosooo
13-12-2007, 16:47
Quello che hai richiesto è esattamente ciò che ha fatto la borland quando ha creato il RAD per delhpi (sto parlando degli albori) sino ad ora.

Crei una classe e poi la derivi: cerca nella reference language di delphi come scrivere componenti e classi. E' molto semplice ma può anche risultare complesso...dipende da ciò che la classe deve eseguire...

alka
15-12-2007, 18:04
Originariamente inviato da paurosooo
Quello che hai richiesto è esattamente ciò che ha fatto la borland quando ha creato il RAD per delhpi (sto parlando degli albori) sino ad ora.

Nello specifico, si stava parlando di interfacce, non di classi, e le interfacce agli albori non erano implementate in Delphi. :)


Ad ogni modo, non rispondere a discussioni che sono già sopite da mesi. :stordita:

paurosooo
15-12-2007, 18:50
non mi risultava che le interface non fossero già inserite dagli albori da delphi 1, infatti cercando 1 pò su internet mi son ritrovato su questo indirizzo: http://64.233.183.104/search?q=cache:OX4Nf8D9ZMwJ:www.ipsiamoretto.it/utenti/azzani/public_html/dispense-pdf/informatica/delphi.pdf+%22interfacce%22+%22delphi+1%22&hl=it&ct=clnk&cd=7&gl=it (che sarebbe la versione in html del seguente link: http://www.ipsiamoretto.it/utenti/azzani/public_html/dispense-pdf/informatica/delphi.pdf). In effetti, in quasi ogni unit c'è una dichiarazione di "interface", ma può essere che mi sbaglio.

Ad ogni buon modo, non avevo notato che la discussione fosse datata, pensavo di fare cosa gradita rispondere, pardon.

denis76
15-12-2007, 20:04
In effetti questo problema lo avevo dimenticato perché bypassato in un altra maniera.
Ad ogni modo non sono riuscito ad usare le interfacce come facevo in Java. A questo punto mi domando se sia possibile in C++ almeno.


Grazie comunque per l'interesse dimostrato. Ciao ciao.

alka
15-12-2007, 20:12
Originariamente inviato da denis76
A questo punto mi domando se sia possibile in C++ almeno.
Siamo andati un pochino off topic...



Originariamente inviato da paurosooo
In effetti, in quasi ogni unit c'è una dichiarazione di "interface"
Quella non è una dichiarazione: è la parola chiave interface che indica l'inizio della sezione della unit che è visibile all'esterno, e che si contrappone alla sezione implementation, ma non ha nulla a che fare con la definizione e l'implementazione di interfacce di cui si stava parlando (cioè questo (http://www.delphibasics.co.uk/RTL.asp?Name=Interface)).

Ciao! :ciauz:

Loading