Code:
public abstract   class Light
{
   public abstract void TurnOn();
   public abstract void TurnOff();
}
public abstract   class Creator
{
   public abstract Light factory();
}
?:
Creator里面的代码应该如何理解

解决方案 »

  1.   

    返回类型为Light的抽象方法。
      

  2.   

    返回类型为Light的抽象方法。
      

  3.   

    而且返回值类型为Light抽象类的类型。
      

  4.   

    Code:
    public abstract   class Creator
    {
       public abstract Light factory();
    }?:
    如果一个类继承自这个Creator并重写factory()方法,那么这个重写方法的返回值是否必须是Light呢,且必须显示的声明返回值呢?
      

  5.   

    Code:
    public class BulbCreator : Creator
    {
       public override Light factory()
       { return new BulbLight(); }
    }
    ?:
    如果BulbLight()方法只是BulbLight类的构造函数,它是否具有默认的返回值呢?
      

  6.   

    如果一个类继承自这个Creator并重写factory()方法,那么这个重写方法的返回值是否必须是Light呢,且必须显示的声明返回值呢?返回值可以是Light的一个派生类。没有必要进行显示转换。?:
    如果BulbLight()方法只是BulbLight类的构造函数,它是否具有默认的返回值呢?这个无非是返回一个BulbLight的实例而已。不用太钻牛角了吧
      

  7.   

    "返回值可以是Light的一个派生类。没有必要进行显示转换。"__brightheroes(在地狱中仰望天堂)====精辟!明白了,劳烦各位废心了!最后问一下,我应该如何给各位回答问题加分呢?