如何优化该类阿
      public class Car : Engine { public Car(int engineSize) : base(engineSize) {
} public void startEngine() {
isStarted = true;
} public void stopEngine() {
isStarted = false;
}
}
public class Engine { public Engine(int engineSize) {
this.engineSize = engineSize;
} public virtual bool IsStarted() {
return isStarted;
} public int GetEngineSize() {
return engineSize;
}     
protected bool isStarted;
private int engineSize;
}

解决方案 »

  1.   

    在这里优化是指什么?除非你另有他意,Engine好像不该是Car的父类,Engine应该是Car的一部分
      

  2.   

    极其支持思归老大的,Engine和Car不应该是继承关系,应该是相互调用,不然Engine和Car之间的耦合会增加。Car只管Engine输出动力,而不管它内部是烧油还是烧气。比如Engine这样:
    public bool 输出动力();
    public bool 取得能源(int num);
    下面是试着改了的代码
    public class Car //: Engine 
    {
    private Engine engine;//Added code public Car(int engineSize)//: base(engineSize)
    {
    engine=new Engine(engineSize);
    } public void startEngine() 
    {
    engine.IsStarted = true;
    // isStarted = true;
    } public void stopEngine() 
    {
    engine.IsSatarted = false;
    // isStarted = false;
    }
    }
    public class Engine 
    { public Engine(int engineSize) 
    {
    this.engineSize = engineSize;
    }// //public virtual bool IsStarted() 
    // {
    // return isStarted;
    // } public int GetEngineSize() 
    {
    return engineSize;
    }//Begin Added Code
    public bool IsSatarted
    {
    get{return isStarted;}
    set{isStarted=value;}
    }
    //End Added Code
        
    protected bool isStarted;
    private int engineSize;
    }
      

  3.   

    多些各位兄弟了, 我也有着方面的感觉就是有时候很难区分 yfmine(随风) saucer(思归) 是正解