Sto scrivendo una classe astratta con un metodo astratto (quindi, tutte le classi che ne ereditano devono implementare tale metodo). Tuttavia, non voglio specificare i parametri che il metodo deve utilizzare, poiché ogni metodo può assumere parametri diversi o assenti. Solo il nome e il valore di ritorno dovrebbero essere gli stessi.Definire un metodo astratto senza specificare i parametri
C'è un modo per farlo in C#?
Grazie per qualsiasi aiuto!
Ogni bambino deve creare un'implementazione di questo metodo in cui può contenere diversi tipi di input, ma produrrà lo stesso tipo di output. Quindi posso usare l'output per eseguire la logica del mio programma. – TheBoss
@ TheBoss: il punto delle classi astratte (come le interfacce) è quello di consentire ... una buona ..strazione di funzionalità comune. Non puoi usarlo per definire qualcosa come "Hai bisogno di una funzione chiamata' Foo' che richiede * alcuni * (o nessun) parametro e restituisce un 'int'"; tale funzione non può essere astratta, poiché la sua firma non è definita. Sarebbe impossibile chiamare (non in modo riflessivo) dal codice che fa riferimento alla classe a un livello superiore rispetto a dove viene definita la firma specifica, rompendo l'astrazione. –
@ TheBoss: Penso che dovresti esaminare l'uso di Generics per risolvere la tua sfida di progettazione, come nell'esempio di codice pubblicato da Jon. – code4life