C#中不一致的可访问性意味着什么?

时间:2009-12-13 01:25:33

标签: c#

即时尝试使用此方法制作我的角色,但我收到错误: 不一致的可访问性:返回类型'consoleapplication1.Enemigo'的可访问性低于 方法'consoleapplication1.poringbuilder.makeporing()' 它是第一次我得到这个错误,我真的不知道该怎么做,我尝试了很多不同的方法,但我得到同样的错误PLZ帮助>。<

namespace ConsoleApplication1
{
    public static class PoringBuilder
    {
        public static Enemigo MakePoring()
        {
            return new Enemigo(15, 0, 30,15, false, false,"Poring");
        }
    }

这是另一个班级

namespace ConsoleApplication1
{
    class Enemigo:Personaje
    {
        public Enemigo(int Damage, int Defensa, int HP,int MP, bool Evade, bool Counter, string Nombre)
            : base(Damage, Defensa, HP,MP, Evade, Counter, Nombre)
        {
        }
    }
}

这是我所有班级的家长

namespace ConsoleApplication1
{
    class Personaje
    {
        public int Damage;
        public int Defensa;

        public int HP;

        public int MP;
        public bool Evade;
        public bool Counter;
        public string Nombre;
        //public Personaje() { }
        public Personaje(int Damage, int Defensa, int HP,int MP, bool Evade, bool Counter, string Nombre)
        {
            this.Damage = Damage;
            this.Defensa = Defensa;
            this.HP = HP;
            this.MP = MP;
            this.Evade = Evade;
            this.Counter = Counter;
            this.Nombre = Nombre;
        }
    }
}

我正在主程序中使用它

List<Enemigo> EnemigosNoob = new List<Enemigo>();
EnemigosNoob.Add(PoringBuilder.MakePoring());

我希望我足够精确&gt;。&lt;我试图将其公之于众,并且没有解决任何问题&gt;。&lt;

2 个答案:

答案 0 :(得分:3)

您的MakePoring方法是公开的,而Enemigo类则不是。

您需要将Enemigo类声明为public:

public class Enemigo

答案 1 :(得分:2)

您的类Enemigo在命名空间中是私有的。您需要将其声明为public