Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/356.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 抽象类可以作为子类添加到HashMap吗_Java_Hashmap_Abstract Class - Fatal编程技术网

Java 抽象类可以作为子类添加到HashMap吗

Java 抽象类可以作为子类添加到HashMap吗,java,hashmap,abstract-class,Java,Hashmap,Abstract Class,我有一个方法 exampleMethod(Map<String, Number> exMap). 我可以用Integer或Long这样的数字子类调用这个方法吗?所以方法类应该是 A a = new A(); a.exampleMethod(Map<"String, Integer"> intMap); 谢谢否,要做到这一点,您需要将方法签名 exampleMethod(Map<String, ? extends Number> e

我有一个方法

    exampleMethod(Map<String, Number> exMap). 
我可以用Integer或Long这样的数字子类调用这个方法吗?所以方法类应该是

    A a = new A();
    a.exampleMethod(Map<"String, Integer"> intMap);

谢谢

否,要做到这一点,您需要将方法签名

exampleMethod(Map<String, ? extends Number> exMap)

当然,您将无法向地图添加任何值,只需阅读即可。

我同意jtahlborn的版本,或者,您也可以按照

<T extends Number> void exampleMethod(Map<String, T> exMap) {
}

否。您必须将方法签名转换为exampleMethodMap exMap以支持非精确数字映射值类型。