Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 15 su 15
  1. #11
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    Non è un virtuosismo e non va affatto oltre il polimorfismo. E' indispensabile in tutti quei casi in cui ti serve l'ereditarietà multipla (che in Java si attua proprio mediante le interfacce).

    Un esempio è il caso di tutto ciò che è cliccabile: pulsanti, combo box, menu, ecc... sono tutte classi diverse che non necessariamente derivano dalla stessa classe madre (pensa alla differenza fra un pulsante e una combo box), ma tutte queste hanno qualcosa in comune: possono essere cliccate.
    In realtà questa cosa non è data da un'interfaccia, ma potrebbe essere vista come tale: tutti hanno il metodo addActionListener().
    Proprio partendo da questa piccola similitudine arriva l'esempio concreto: ActionListener. Questa interfaccia serve per accomunare diversi tipi di oggetti. Non importa di che tipo sia l'oggetto, limpotrante è che sia di tipo ActionListener, ovvero che preveda il metodo actionPerformed(). Questa è una proprietà garantita dall'implementazione dell'interfaccia: qualsiasi oggetto che implementa tale interfaccia deve prevedere un metodo con quel nome e che rispetta quella firma. A questo punto non interessa a nessuno sapere sel'oggetto passato è un pulsante, un pannello, un Vector o una classe diversa: sappiamo che implementa ActionListener e quindi prevede il metodo actionPerformed (che tutto ciò di cui ho bisogno per lavorarci).


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  2. #12
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    4,826
    ho capito spiegazione esaustiva grazie lele, perchè per sentito dire è tutto diverso dalla realta.
    Ciao.

  3. #13
    Utente di HTML.it L'avatar di morphy79
    Registrato dal
    Jun 2004
    Messaggi
    1,568
    mi è tornato un forte dubbio...

    adesso sto facendo una classe grafica.. un banale login che confronta user e psw inserite dall'utente con quelle criptate presenti in un file xml..

    ho pensato di fare la mia bella classettina grafica con il main, una classe per la lettura xml e una classe per decriptare..

    panico.. VVoVe:

    il dubbio è fare la classe grafica che prende come interfaccie le altre 2 o includerle, poi crearmi i relativi oggetti ed utilizzarne i metodi ???

    sono ancora confuso in merito..
    odio chi parla di politica..
    anzi vorrei fondare un partito contro tutto ciò

  4. #14
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    Sono 3 classi diverse che non hanno nulla in comune... perchè fare delle interfacce? Oggetti diversi servono per scopi diversi... un oggetto di una classe può utilizzare un oggetto di un'altra classe il quale serve a compiere una piccola parte del lavoro del primo oggetto.

    Le interfacce sono utili quando c'è una classe che deve "trasferire informazioni" ad altre classi, le quali prevedono tutte uno stesso metodo per lo scambio di queste informazioni, pur essendo classi di tipo diverso.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  5. #15
    Utente di HTML.it L'avatar di morphy79
    Registrato dal
    Jun 2004
    Messaggi
    1,568
    Si è vero.. grazie della chiarezza lele.. scusa se sono tornato sull'argomento ma mi lascia spesso dei dubbi l'uso delle interfaccie..
    odio chi parla di politica..
    anzi vorrei fondare un partito contro tutto ciò

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.