I thought it would be more flexible to have an interface but it turns out to be redundant. I agree that abstract class would be a better choice.