code: public static <T> Key<T> of(Class<T> type,
                                Annotation ann)
    {
      Objects.requireNonNull(type);
      Objects.requireNonNull(ann);
  
      return new Key<>(type, new Annotation[] { ann });
    }
docs: Builds Key from a Class and annotation
  
  @param type target class
  @param ann  associated annotation
  @param <T>  target type
  @return instance of a Key