Override interface member?

I'm getting a "parsing error" and I'm not sure what I'm doing wrong.

using UnityEngine;
using System.Collections;

public interface FlyBehavior : MonoBehaviour {

    virtual void fly();

}

//  Override FlyBehavior

using UnityEngine;
using System.Collections;

public interface FlyWithWings : FlyBehavior{

    override void fly(){

        print("I'm flying!!!"); // ---> Parsing Error!!!

    }

}

Both of those classes should be classes, not interfaces

If you were making an interface, you wouldn't be able to extend MonoBehaviour, it's a class, and interfaces only implement other interfaces

Using classes it should look roughly like this:

using UnityEngine;
using System.Collections;

public class FlyBehavior : MonoBehaviour {

    public virtual void fly() {}

}

//  Override FlyBehavior

using UnityEngine;
using System.Collections;

public class FlyWithWings : FlyBehavior{

    public override void fly(){

        print("I'm flying!!!");

    }
}

If you did want to do it with an interface:

using UnityEngine;
using System.Collections;

public interface IFly {

   void fly();

}

//  Override FlyBehavior

using UnityEngine;
using System.Collections;

public class FlyWithWings : MonoBehaviour, IFly{

    public override void fly(){

        print("I'm flying!!!");

    }
}