Si tengo una clase que necesita implementar una interfaz pero uno o más de los métodos en esa interfaz no tienen sentido en el contexto de esta clase en particular, ¿qué debería hacer? ¿Hago?Comportamiento correcto para métodos de interfaz que no se pueden implementar
Por ejemplo, digamos que estoy implementando un patrón de adaptador donde quiero crear una clase contenedora que implemente java.util.Map envolviendo algún objeto inmutable y exponiendo sus datos como pares clave/valor. En este caso, los métodos put y putAll no tienen sentido ya que no tengo forma de modificar el objeto subyacente. Entonces, la pregunta es: ¿qué deberían hacer esos métodos?
UnsupportedOperationException suele ser el camino a seguir, a menos que sepa que el método se llamará de todos modos, y desea hacer más de un "no-op", en cuyo caso devolver nulo o similar es lo mejor que puede hacer . – skaffman
... parece que respondiste tu propia pregunta, Mike ... – Sandman
El hecho de que necesites hacer esto podría considerarse un problema de diseño. – Aidos