Visualizzazione dei risultati da 1 a 5 su 5

Discussione: implementazione metodo

  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2013
    Messaggi
    53

    implementazione metodo

    salve,

    mi serve un aiuto circa l'implementazione di un metodo
    praticamente ho un metodo che deve riceve come parametro un oggetto e in base all'oggetto immesso esegue il codice corrispondente

    cioè
    public void metodo(tipo oggetto)
    {
    {se oggetto a fai questo}
    {se oggetto b fai questo}
    {se oggetto c fai questo}
    }
    come posso fare??

    praticamente è l'utente che crea l'oggetto a o b o c poi in base all'oggetto creato (tramite l'invocazione del metodo) si determina le istruzioni da fare...

    se per esempio anziché un oggetto fosse stata una variabile di tipo int la soluzione era facile

    int valore = valore immesso dall'utente

    public void metodo (int valore)
    se valore == x fai questo
    se valore == y fai questo
    ecc.....

    il problema è che non so come implementarlo però togliendo la variabile primitiva int e utilizzando gli oggetti


  2. #2
    Utente di HTML.it L'avatar di goatboy
    Registrato dal
    Mar 2011
    residenza
    Salerno
    Messaggi
    408
    Prova ad usare l'operatore instanceof. Il codice sarà tipo:

    codice:
    if(oggetto instanceof tipo1){
       ...
    }else if(oggetto instanceof tipo2){
       ...
    }
    ecc..

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2013
    Messaggi
    53
    grazie per la risposta però non funziona......

    praticamente devo inizializzare gli oggetti in ogni caso?
    cioè ho 3 classi(Prodotto,Macchina,Ricambio) con un costruttore ciascuna che come prassi inizializza le variabili d istanza
    quindi non c'è modo di fare

    public void metodo (Object o)
    {
    se o corrisponde all' oggetto Prodotto prodotto fai questo...
    ecc....
    Prodotto prodotto deve essere inizializzato
    ma se si come faccio a farlo? visto che è l'utente iterativamente a inizializzarlo

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da rrt Visualizza il messaggio
    grazie per la risposta però non funziona......
    Se hai un reference ad un oggetto e vuoi:
    - confrontarlo per uguaglianza di significato (cioè per contenuto) con altri oggetti, usa equals()
    - confrontarlo per identità di riferimento con altri reference, usa ==
    - verificare se è uno tra N tipi, usa instanceof (o in modo più "stretto" comparando con == il Class con getClass() ).

    Le possibilità sono queste ... altre storie non ce ne sono.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    Utente di HTML.it L'avatar di goatboy
    Registrato dal
    Mar 2011
    residenza
    Salerno
    Messaggi
    408
    Quote Originariamente inviata da rrt Visualizza il messaggio
    grazie per la risposta però non funziona......

    praticamente devo inizializzare gli oggetti in ogni caso?
    cioè ho 3 classi(Prodotto,Macchina,Ricambio) con un costruttore ciascuna che come prassi inizializza le variabili d istanza
    quindi non c'è modo di fare

    public void metodo (Object o)
    {
    se o corrisponde all' oggetto Prodotto prodotto fai questo...
    ecc....
    Prodotto prodotto deve essere inizializzato
    ma se si come faccio a farlo? visto che è l'utente iterativamente a inizializzarlo
    Questo è un altro problema.. tu avevi chiesto come capire se l'oggetto fosse di tipo a, b o c. Non so come sia strutturato il tuo progetto e dove sia inserito questo "metodo".
    In ogni caso, andbin ha risposto in modo esaustivo.

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 © 2025 vBulletin Solutions, Inc. All rights reserved.