我可以在没有引用的情况下访问父变量吗?

时间:2015-05-06 09:28:14

标签: c# multiple-inheritance

我有一个继承另一个类的类的列表。我希望能够访问父变量而不必使用引用(以使事物更具可读性)。

    public class MyCode : OtherCode
    {
        public string label;
        public MyCode()
        {
            label = "somestring";
            colour = 5;
            Console.WriteLine("colour is: " + colour); // this is ok
            List<particle> parts = new List<particle>();
            parts.Add( new particle() );
        }

        public class particle //I'd like this class to have access to the parent variables
        {
            public particle()
            {
                Console.WriteLine("The colour is: " + colour); // can this be accessed without using a parent reference?
                //Console.WriteLine("The label is: " + label); // unaccessable
                Console.ReadLine();
            }
        }
    }

    public class OtherCode
    {
        public int colour = 1;
        public OtherCode()
        {
            //I didn't do it
        }
    }

是否可以通过这种方式继承父变量,因此我可以直接输入它们&#39;原样&#39;在粒子方法中?

为这个令人困惑的例子道歉,我想我在这种情况下认为我可以使用继承而惹恼了...... 我想知道的是,嵌套类(粒子)是否可以访问标签和颜色而不在构造中传递对它的引用并在整个地方使用Parent.variable

1 个答案:

答案 0 :(得分:1)

这是确定何时使用继承的规则。

尝试描述问题并确定句子中的动词。

例如,这里的正确句子是什么?

因此,由于懒惰或其他原因,您无法使用继承。每个概念都有其用例,避免变量/属性声明不是继承的目标。