An interface in Java is a contract. It declares method signatures that a class must implement, but it contains no instance fields and (before Java ) no method bodies. Think of it as a promise: "any class that implements this interface guarantees these behaviors."
Why not just use a parent class? Because Java allows only single inheritance. A class can extend superclass, but it can implement as many interfaces as it wants. Without interfaces, you'd have no way to share a common type across unrelated class hierarchies.