RISOLTO Spiegazione metodo

Stato
Discussione chiusa ad ulteriori risposte.

Andretti60

Utente Èlite
6,440
5,091
Per me non è confuso, è normale avere un metodo che “wrap” un altro metodo (magari con lo stesso nome) per aggiungere funzionalità e come in questo caso gestire gli errori.
Per me è perfettamente chiaro che siamo di fronte a due metodi diversi, il “private void” che è il metodo della classe corrente (this), che richiama il metodo (con lo stesso nome) di una classe di supporto (DaoRistorante)
 

BAT

Moderatore
Staff Forum
Utente Èlite
22,918
11,562
CPU
1-Neurone
Dissipatore
Ventaglio
RAM
Scarsa
Net
Segnali di fumo
OS
Windows 10000 BUG
Dici? non ho detto che sia "illegale" farlo però DaoRistorante non è una classe di supporto ma la/una superclasse di DaoRistoranteDatabase
sta inizializzando un attributo di una classe (quale?) creando un oggetto di superclasse ed istanziandolo con una sottoclasse;
si può fare ma proprio non riesco a farmelo piacere.
Sarebbe utile avere uno schemino delle classi con tanto di metodi ed attributi.
 

Andretti60

Utente Èlite
6,440
5,091
Dici? non ho detto che sia "illegale" farlo però DaoRistorante non è una classe di supporto ma la/una superclasse di DaoRistoranteDatabase
sta inizializzando un attributo di una classe (quale?) creando un oggetto di superclasse ed istanziandolo con una sottoclasse;
si può fare ma proprio non riesco a farmelo piacere.
Sarebbe utile avere uno schemino delle classi con tanto di metodi ed attributi.
Ohibò perché mai.
ti faccio un esempio, la lettura di un file di testo, che richiede la lettura di una linea del file e effettuare alcune operazioni sul testo, per esempio scartare linee vuote, o fermarsi appena si trova una linea vuota, elaborare solo linee che contengono un certo tipo di stringa e così via. Ovvio che per fare ciò si usa una classe di sistema (per esempio il metodo ReadLine di un streamreader) ma è conveniente mettere tale chiamata all’interno di un metodo con lo stesso nome, che esegue la manipolazione del testo letto e ritorna solo la linea elaborata.
 

BAT

Moderatore
Staff Forum
Utente Èlite
22,918
11,562
CPU
1-Neurone
Dissipatore
Ventaglio
RAM
Scarsa
Net
Segnali di fumo
OS
Windows 10000 BUG
ok, ma l'inizializzazione degli attirbuti si fa con i costruttori quando possibile, oppure con metodi set, o al limite con metodi factory.
Qui bastava restituire un oggetto lista (ArrayList o chi per lui). E si ritorna sul terreno della progettazione iniziale delle classi.
A me il fatto che quel codice compili e funzioni mi lascia comunque il dubbio che sarebbe stato meglio procedere in un altro modo.
 
Stato
Discussione chiusa ad ulteriori risposte.

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!