2

在这种情况下,“可选”是什么意思?

public interface Collection<E> extends Iterable<E> 
{
 // Basic operations
   int size();
   boolean isEmpty();
   boolean contains(Object element);
 // optional

最后一行注释“//可选”:是什么意思?我试图通过实现一个集合来实现它public class Col-implementation implements Collection,它根本不是可选的。

我需要实现所有方法,即使是那些被注释为“可选”的方法。我显然不明白他们所说的“可选”是什么意思。对此有任何见解吗?

4

2 回答 2

7

您必须提供一个实现,但该实现可以抛出一个UnsupportedOperationException.

于 2013-06-29T10:55:36.620 回答
4

在这种情况下optional,意味着并非所有人都Collection<E>可以在实现中做一些有用的事情。虽然提供实现确实是强制的,但是抛出异常表示方法没有实现也是可以的

于 2013-06-29T10:56:27.640 回答