有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Map<MyClassType1,Object>

我必须将Map<ClassType1,Object>类传递给构造函数。如果我只通过Map.class,我有一个错误。所以我想知道Map<MyClassType1,Object>的类是什么

public class GetSessionRequest extends SpiceRequest<Map<ClassType1, Object>> {

    private Client mClient;
    public GetSessionRequest(Class<Map<ClassType1, Object>> clazz) {
        super(clazz);
    }

    public GetSessionRequest(Client client) {
        super(/*What should I pass here. I can't pass Map.class*/); 
        mClient = client;
    }


    @Override
    public Map<ClassType1, Object> loadDataFromNetwork() throws Exception {
        Map<ClassType1, Object> map = mClient.getSession();
        return map;
    }

}

共 (5) 个答案

  1. # 1 楼答案

    Map是一个接口。有许多可用的实现,例如HashMap

  2. # 2 楼答案

    我想你的意思是这样的:

    public class T {
        public T(Class<Map<MyClassType1, Object>> cls) {
        }
    }
    

    但你需要这样做:

    public class T {
        public T(Class<? extends Map<MyClassType1, Object>> cls) {
        }
    
        public static void main(String[] args) {
            Map<MyClassType1, Object> m = new HashMap<MyClassType1, Object>();
            T t = new T(m.getClass());
        }
    }
    
  3. # 3 楼答案

    地图<&燃气轮机;是一个与列表类似的界面<&燃气轮机;并且接口没有构造函数。您必须使用HashMap、TreeMap或任何实现接口的类

  4. # 4 楼答案

    Map没有构造函数,它是一个接口,您可以使用HashMap<ClassType1,Object>TreeMap<ClassType1,Object>

  5. # 5 楼答案

    如果它允许映射interfacemethod or constructor可以允许Map interface的任何implementation