C# 7.2 introduce un nuovo access modifier denominato private protected. Un membro di una classe dichiarato come private protected può essere acceduto solamente dalle classi che ereditano dalla classe e che si trovano nello stesso assembly. Per chiarire meglio il concetto con uno frammento di codice.
//assembly A
public class Person
{
private protected Name { get; set; }
}
public class Teacher : Person {
public string GetName()
{
return $"Teacher name is: {Name}"; //Ok
}
}
//Assembly B
public class Student : Person {
public string GetName()
{
return $"Student name is: {Name}"; //Errore di compilazione
}
}La classe Teacher può lecitamente accedere alla proprietà Name in quanto eredita da Person e si trova nello stesso assembly. La classe Student si trova in un altro assembly quindi non puè accedere alla proprietà Name e si ottiene un errore in fase di compilazione
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Gestire gli errori nelle Promise JavaScript con try()
Ridimensionamento automatico input tramite CSS
Building Custom Developer Agents
Logica Graceful Degradation in HTML e CSS
Utilizzare le librerie native di .NET per comprimere uno o più file in formato ZIP
Utilizzo delle Feature flag in ASP.NET Core
Utilizzare @property per animare nativamente un oggetto HTML tramite CSS
Configuratione e utilizzo .NET Aspire CLI
Creare un extension method per applicare condizionalmente una Where in una query LINQ per Entity Framework
Keynote .NET Conference Italia 2025
Esporre workflow come server MCP con Azure Logic Apps
Importare repository da Bitbucket a GitHub Enterprise Cloud


