Explain the difference between default and static methods in Java 8 interface design and when you would use each.