Polimorfismo

di il
4 risposte

Polimorfismo

Ho la necessità di creare una classe che si deve occupare della creazione un file txt. I dati da inserire nel file txt devono essere prelevati utilizzando due classi differenti ma che sostanzialmente tirano fuori dei tipi di dati uguali ma da fonti diverse.
Ora vorrei evitare nella classe principale di controllare ogni volta da quale classe si stanno recuperando i dati tipo:
if(oggetto1)
classe1
else if(oggetto2)
classe2

Qualcuno ha qualche suggerimento?

4 Risposte

  • Re: Polimorfismo

    io74 ha scritto:


    Ho la necessità di creare una classe che si deve occupare della creazione un file txt. I dati da inserire nel file txt devono essere prelevati utilizzando due classi differenti ma che sostanzialmente tirano fuori dei tipi di dati uguali ma da fonti diverse.
    Ora vorrei evitare nella classe principale di controllare ogni volta da quale classe si stanno recuperando i dati tipo:
    if(oggetto1)
    classe1
    else if(oggetto2)
    classe2

    Qualcuno ha qualche suggerimento?
    Direi che puoi risolvere con un semplice overload del metodo di scrittura:
    
    Class MyWriteFileClass{
             .........
             public void writeFile (Class1 class1){
                      ......
             }
    
             public void writeFile (Class2 class2){
                      .......
             }
             ......
    }
    
  • Re: Polimorfismo

    A cosa ti serve sapere da che classe stai prelevando i dati?
  • Re: Polimorfismo

    Devo conoscere la classe da dove prelevare i dati, per richiamare i rispettivi metodi perché non hanno sempre lo stesso nome, ed inoltre alcuni metodi ritornano dati strutturalmente diversi che poi devo normalizzare in base alla classe che li ha restituiti.
  • Re: Polimorfismo

    Allora come suggerito da ttrash la cosa più semplice è fare l'overload del metodo di scrittura
Devi accedere o registrarti per scrivere nel forum
4 risposte