Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    [Java] Problema con metodo statico in classe astratta

    Salve a tutti, sono nuovo del forum (e anche di Java)
    Ho il seguente problema :
    devo definire un metodo statico all'interno di una classe astratta; eseguendo questo metodo mi dovrebbe ritornare un'istanza di una sotto-classe (non più astratta) estesa dalla classe astratta di partenza contenente il metodo.
    Il problema è che così facendo all'interno del metodo dovrei scrivere una cosa tipo :
    codice:
     
    public static ClasseAstratta (parametri) {
    
       //eseguo dei controlli, e a seconda del risultato istanzio una sottoclasse
       return new SottoClasse(parametri);
    
    }
    E questo mi genera un'errore in quanto non posso istanziare nuovi oggetti all'interno di classi astratte (cosi mi dice Eclipse).
    Mi sta mandando parecchio in confusione 'sta cosa
    Qualcuno sa dirmi dove sbaglio?
    Grazie

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Così è corretto:

    codice:
    abstract class ClasseAstratta
    {
        public static ClasseAstratta getInstance ()
        {
            return new SottoClasse ();
        }
    }
    
    class SottoClasse extends ClasseAstratta
    {
    }
    (nel tuo caso aggiungi parametri, costruttori, ecc...)
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Ok grazie ora provo (nel mio esempio postato mi ero dimenticato il nome del metodo)

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.