Ho le seguenti classi:Classe pubblica è inaccessibile a causa del livello di protezione
namespace Bla.Bla
{
public abstract class ClassA
{
public virtual void Setup(string thing)
{
}
public abstract bool IsThingValid();
public abstract void ReadThings();
public virtual void MatchThings() { }
public virtual void SaveThings() { }
public void Run(string thing)
{
Setup(thing);
if (!IsThingValid())
{
}
ReadThings();
MatchThings();
SaveThings();
}
}
}
namespace Bla.Bla
{
public class ClassB : ClassA
{
ClassB() { }
public override void IsThingValid()
{
throw new NotImplementedException();
}
public override void ReadThings()
{
throw new NotImplementedException();
}
}
}
Ora cerco di fare quanto segue:
public class ClassC
{
public void Main()
{
var thing = new ClassB();
ClassB.Run("thing");
}
}
che restituisce il seguente errore: ClassB è inaccessibile a causa al suo livello di protezione.
Ma sono tutti pubblici.
è C#, @Hans –
per favore, aggiungere spazio dei nomi, e altri codici –
@HansPassant, questo codice compila – Habib