public Future<?> submit(Runnable task) {
        if (task == null) throw new NullPointerException();
        RunnableFuture<Void> ftask = newTaskFor(task, null);
        execute(ftask);
        return ftask;
    }
public Future < ? > submit ( Runnable task ) { if ( task == null ) throw new NullPointerException ( ) ; RunnableFuture < Void > ftask = newTaskFor ( task , null ) ; execute ( ftask ) ; return ftask ; }
@throws RejectedExecutionException {@inheritDoc}
@throws NullPointerException       {@inheritDoc}