代码之家  ›  专栏  ›  技术社区  ›  Salem Masoud

AddLinkEntry类是原始类型。泛型类型AddLinkEntry类<T>的引用应参数化

  •  0
  • Salem Masoud  · 技术社区  · 6 年前

    我有下面一行抛出“AddLinkEntry是一个原始类型。对泛型类型AddLinkEntry的引用应参数化为“警告”

    List<AddLinkEntry> addLinkCache = new ArrayList<AddLinkEntry>();
    

    还有AddLinkEntry类

    public class AddLinkEntry<T> {
    
      /**
       * Function that Adds a link between this object and given object
       */
      private IAddLinkToObjectFunctional<T> objectFunctional;
    
      /**
       * ID of given object
       */
      private Id id;
    
      /**
       * Constructs a new {AddLinkEntry<T>}.
       * 
       * @param objectFunctional
       *        Function that Adds a link between this object and given object
       * @param id
       *        ID of given object
       */
      public AddLinkEntry(IAddLinkToObjectFunctional<T> objectFunctional, Id id) {
        this.objectFunctional = objectFunctional;
        this.id = id;
      }
    
      /**
       * Retrieve a function that Adds a link between this object and given object
       */
      public IAddLinkToObjectFunctional<T> executeLinkage() {
        return objectFunctional;
      }
    
      /**
       * Retrieve an Id
       */
      public Id getId() {
        return id;
      }
    
      @FunctionalInterface
      public interface IAddLinkToObjectFunctional<T> {
    
        /**
         * Adds a link between this object and given object
         * 
         * @param objectNode a given object to link
         */
        void addLink(T objectNode);
      }
    }
    

    我想知道是什么原因导致的警告,以及如何摆脱它而不使用抑制警告?

    2 回复  |  直到 6 年前
        1
  •  1
  •   Mateusz R    6 年前

    AddLinkEntry List<AddLinkEntry<String>> addLinkCache = new ArrayList<AddLinkEntry<String>>();

        2
  •  1
  •   Sachin    6 年前

    所以, List<AddLinkEntry<SpecificType>> 会很好的。

    使用标志 -Xlint:rawtypes