Interface bloat

In software design, interface bloat (also called fat interfaces by Bjarne Stroustrup and Refused Bequests by Martin Fowler) is when an interface incorporates too many operations on some data into an interface, only to find that most of the objects cannot perform the given operations.

Interface bloat is an example of an anti-pattern. One might consider using visitor pattern, Adapter Pattern, or interface segregation instead.