Interfaces and abstract methods have been described across the Internet millions of times already. I doubt you'll get a better explanation on here than you will anywhere else on the web.
That being said, if you are coming from a Java background your idea of interfaces may differ, especially when it comes to explicit interface implementation, which to my knowledge you cannot do in Java.
If you have a complex set of business rules, it might also be worth looking at covariance, invariance, and contravariance. Again, it's been done to death elsewhere on the web, so use Google to find the explanation that works well for you, and then try building on these principles.