an interface is a contract. It tells any class accessing an object what methods and behaviours are guaranteed to be in place in that object without telling anything about the actual implementation of those methods.
Check out the API docs for java.util.List and the implementing classes for some good examples.
Interfaces are a pretty basic principle in Java. I'm quite certain they have been discussed here before. You should use the Search tool to find the previous threads. Also any decent Java text or online tutorial will have much more detail than can be given here.