工厂模式只能继承方法,而不能继承父类的变量吗
public abstract class VideoWiring
    {
        public string text;
    }    public class Create
    {
        public static VideoWiring factory(string VideoName)
        {
            switch (VideoName)
            {
                case "DVD":
                    return new DVD();
                case "VCD":
                    return new VCD();
            }
            return null;
        }
    }
    public class VCD:VideoWiring
    {       
            string text="正在播放播放VCD";
       
    }    public class DVD : VideoWiring
    {        
            string text="正在播放播放DVD";
        
    }在另一个类中中调用
           VideoWiring vw = Create.factory("DVD");
            textBox1.Text= vw.text;
程序会提示:未将对象引用设置到对象的实例。
小弟是初学,想问子类是不是不可以继承父类的变量,如果父类有一个变量,我的子类想重新对他进行赋值,并且在其他类中调用,该怎么办

解决方案 »

  1.   

    public class DVD : VideoWiring
      {  
      string text="正在播放播放DVD";/*这里默认是Private权限!!!*/
       
      }如果想继承请使用属性父亲 abstract string Text{get;set;}子类:override string Test
    {
    get
    {
    return "子类";
    }
    }
      

  2.   

    最后赋值的时候,你要把vw转换为对应的类型才可以。
    父类不可以访问子类特有的成员。还有一个就是要把两个类中的Text属性的访问修饰符更改为public.
      

  3.   

      textBox1.Text= vw.text;
    程序会提示:未将对象引用设置到对象的实例。字段vw.text没有赋值