UnmodifiableCollection(Collection<T> c)
UnmodifiableCollection(Collection<? extends T> c)
    UnmodifiableCollection(Collection<T> c)    {      this.c = c;      if (c == null)        throw new NullPointerException();    }