È possibile creare un file di classe partial
per una classe che è sealed
?Classe parziale sigillata
risposta
Sembrava compilare bene.
sealed partial class Class1
{
public void MyMethod() { }
}
partial class Class1
{
public void MyMethod2() { }
}
Penso che questa risposta sia più informativa perché la firma della classe sarà unita alla compilazione. Quindi è sufficiente specificare solo una parte come sigillata. E per determinare se la classe è sigillata, dovrai controllare tutte le sue parti. – Maxim
Sì. Le classi sigillate bloccano solo l'ereditarietà. Le classi parziali non sono ereditate; vengono uniti a una classe non appena vengono compilati.
La parola chiave sealed
indica semplicemente che la classe non può essere ereditata. Non ha alcun impatto sul modo in cui il codice della classe è strutturato diversamente. La parola chiave partial
consente semplicemente di dividere una classe tra più file.
Nell'esempio seguente, la classe A viene compilata correttamente. B non viene compilato perché A è sigillato e l'ereditarietà non è consentita.
public sealed partial class A { private int x; }
public sealed partial class A { private int y; }
public class B : A { }
Cosa succede se nei file divisi una definizione di classe è contrassegnata come parziale e l'altra no? Cosa ha la precedenza? –
Non c'è precedenza. Otterrai un errore del compilatore. –
Sì, è possibile effettuare una classe parziale sigillata.
Es: Public Sealed Classe parziale Dipendente
- 1. Differenza tra interfaccia, classe astratta, classe sigillata, classe statica e classe parziale in C#?
- 2. Posso rendere una classe non sigillata internamente ma sigillata esternamente?
- 3. Perché dovresti rendere un'intera classe sigillata/finale?
- 4. Perché la classe Singleton dovrebbe essere sigillata?
- 5. Implementazione IDisposable su una classe sigillata
- 6. Classe sigillata - Perché rimuovere il Costruttore pubblico?
- 7. Perché la classe StringBuilder è sigillata?
- 8. Classe parziale per controller
- 9. Debug di classe parziale
- 10. Classe parziale nidificata
- 11. Che cos'è una classe interna sigillata in C#?
- 12. Quali sono le differenze tra la classe finale e la classe sigillata in Scala?
- 13. Appiattimento una gerarchia di classi cassa sigillata
- 14. Come ignorare una proprietà di classe parziale
- 15. Scorciatoia di classe parziale di gruppo
- 16. classe parziale con il metodo stesso nome
- 17. Delega di classe parziale in Kotlin
- 18. Cerca nome della classe parziale, pieno ritorno nome della classe
- 19. Kotlin: la classe sigillata non può "contenere" classi di dati? Perché?
- 20. Modificatore parziale mancante sulla dichiarazione di tipo [nome classe]; esiste un'altra dichiarazione parziale di questo tipo
- 21. Sovrascrivere un metodo virtuale in una classe parziale
- 22. esegue l'override di un metodo utilizzando una classe parziale
- 23. In quali condizioni è opportuno avere una "classe parziale"?
- 24. Convenzioni di denominazione per file di classe parziale
- 25. E 'possibile dichiarare una classe parziale in due progetti
- 26. C# migliore implementazione dell'interfaccia parziale in classe base/astratta
- 27. jquery getElementsByClassName trovare il nome di classe parziale
- 28. Specializzazione metodo parziale C++
- 29. Xcode validate failed "una risorsa sigillata mancante o non valida"
- 30. Scala parziale stubing
Hai provato? –
Apri Visual Studio e provalo. –
Poiché non esiste un collegamento tra la partizione delle classi in più file e l'ereditarietà, la mia ipotesi è sì ma, come dice Jay, provatelo. –