Interface Segregation Principle and default methods in Java 8
问题 As per the Interface Segregation Principle clients should not be forced to implement the unwanted methods of an interface ...and so we should define interfaces to have logical separation. But default methods introduced in Java 8 have provided the flexibility to implement methods in Java interfaces. It seems Java 8 has provided the feasibility to enhance an interface to have some methods not related to its core logic, but with some default or empty implementation. Does it not violate the ISP?