Visualizzazione dei risultati da 1 a 3 su 3

Discussione: problema costruttore

  1. #1

    problema costruttore

    Ciao a tutti.. ho un problema con la creazione di un costruttore.. il testo del problema è questo

    2. Classe EventoQuotato.

    La classe EventoQuotato estende la classe Evento aggiungendole un attributo privato quota e il relativo metodo getQuota. La classe inoltre ha un unico costruttore di segnatura EventoQuotato(Evento) che assegna a quota un valore casuale compreso fra 0 e
    1. Usate il metodo nextDouble() della classe java.util.Random.
    il mio problema è che nella classe Evento il costruttore ha questa forma

    Evento(String descrizione, boolean stato)
    nella classe EventoQuotato dovrei usare super() per richiamare il costruttore. Io ho implementato così il codice del costruttore

    codice:
    public class EventoQuotato
       {
          string descrizione;
          boolean stato; 
               public EventoQuotato(Evento)
    
              super(descrizione, stato);
           //qui sta il problema perchè Evento ha due parametri
     di tipo stringa e boolean. Se glieli passo tramite 
    super(descrizione, stato)  mi da il seguente errore 
    
    
    
    error: cannot reference descrizione before supertype constructor has been called
    // e così anche per stato. }
    l'errore si riferisce al fatto che il costruttore della superclasse non è stato ancora chiamato.. ma non mi è mai capitato un'errore del genere e non saprei come risolverlo..

    Non so più dove sbatterci la testa.. se qualcuno riesce a darmi qualche suggerimento sarebbe ottimo .. grazie a tutti!

  2. #2
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Curiosità, descizione e stato sono definiti anche nella superclasse? Se sì, non ha senso dichiararli anche nella classe figlia (nel codice che hai postato ti sei dimenticato di estendere Evento comunque...)

    Ad ogni modo... descizione e stato che devi passare alla superclasse sono quelli contenuti nell'oggetto Evento che hai come parametro o sono nuovi?
    Nel primo caso ti basterà fare

    super(evento.getDescrizione(), evento.getStato());

    nel secondo caso invece li dovrai per forza passare al costruttore...
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  3. #3
    si, nell'esercizio l'ho fatto ma mi sono dimenticato di trascriverlo, comunque mi scuso per la mia ignoranza, ma proprio non sapevo che si potesse fare un richiamo al metodo anche in super.. hai risolto il problema.. grazie mille veramente ...

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.