Domande con tag 'abstract-class'

7
risposte

Quando utilizzare le classi astratte anziché le interfacce con i metodi di estensione in C #?

"Classe astratta" e "interfaccia" sono concetti simili, con l'interfaccia che è il più astratto dei due. Un fattore di differenziazione è che le classi astratte forniscono implementazioni del metodo per le classi derivate quando necessario. In C...
posta 31.01.2011 - 10:17
9
risposte

Perché dovrei dichiarare una classe come una classe astratta?

Conosco la sintassi, le regole applicate alla classe astratta e voglio conoscere l'utilizzo di una classe astratta Abstract class can not be instantiated directly but can be extended by other class Qual è il vantaggio di farlo? Come...
posta 29.07.2011 - 10:59
4
risposte

In C ++ perché e in che modo le funzioni virtuali sono più lente?

Qualcuno può spiegare in dettaglio come funziona esattamente la tabella virtuale e quali puntatori sono associati quando vengono chiamate le funzioni virtuali. Se sono effettivamente più lenti, puoi mostrare il tempo che la funzione virtuale...
posta 22.03.2013 - 23:41
4
risposte

Usa la classe astratta in C # come definizione

Come sviluppatore C ++ sono abbastanza abituato ai file header C ++ e trovo utile avere una sorta di "documentazione" forzata all'interno del codice. Di solito ho un brutto periodo in cui devo leggere un codice C # per questo: non ho quel tipo d...
posta 24.01.2018 - 15:53
2
risposte

Tipo super eccezionale di eccezioni

Se il lancio di System.Exception è considerato così negativo, perché non era Exception fatto abstract in primo luogo? In questo modo, non sarebbe possibile chiamare: throw new Exception("Error occurred."); Ciò imporrebbe l...
posta 14.11.2011 - 15:11
5
risposte

Le enumerazioni creano interfacce fragili?

Considera l'esempio qui sotto. Qualsiasi modifica all'enumerazione ColorChoice interessa tutte le sottoclassi di IWindowColor. Le enumerazioni tendono a causare interfacce fragili? C'è qualcosa di meglio di un enum per consentire una maggiore...
posta 16.03.2015 - 21:39
6
risposte

Quali sono le differenze tra classi astratte, interfacce e quando usarle

Recentemente ho iniziato a girare la testa intorno a OOP, e ora sono al punto in cui più leggo sulle differenze tra classi astratte e interfacce più divento confuso. Finora, nessuno dei due può essere istanziato. Le interfacce sono più o meno pr...
posta 04.11.2012 - 00:38
5
risposte

Posso considerare i metodi di interfaccia come metodi astratti?

Ci stavo pensando, e avevo dei dubbi. Quando dichiaro un'interfaccia, ad esempio: public interface MyInterface { public void method1(); public void method2(); } Questi metodi di interfaccia potrebbero essere considerati astratti? Q...
posta 30.09.2011 - 13:23
5
risposte

Perché i metodi statici non dovrebbero essere sovrascrivibili?

Nelle risposte a questo domanda, il consenso generale è che i metodi statici non devono essere sovrascritti (e quindi le funzioni statiche in C # non possono essere virtuali o astratte). Questo non è solo il caso di C #, però; Anche Java lo pr...
posta 06.09.2016 - 19:01
3
risposte

Devo implementare direttamente un'interfaccia o far eseguire la superclasse?

C'è una differenza tra public class A extends AbstractB implements C {...} vs ... public class A extends AbstractB {...} abstract class AbstractB implements C {...} Capisco che in entrambi i casi, la classe A finirà per conformarsi all...
posta 19.12.2012 - 03:12