我有类似的东西:
private static LinkedHashMap<Class<?>, ?> configFiles;
和静态方法:
@SuppressWarnings("unchecked")
public static <T> T getConfigFile(Class<T> clazz) throws Exception {
return (T) configFiles.get(clazz);
}
但我有 init 方法:
configFiles = new LinkedHashMap<Class<T>, T>();
并且它没有编译:/
但如果我这样做:
@SuppressWarnings("unchecked")
@Override
public void intitConfigFiles()
throws ClassNotFoundException, ConfigurationFilesException
{
configFiles = new LinkedHashMap<Class<?>, T>();
}
它可以工作,但我不知道如何使用 put 方法:/
Class<T> clazz = (Class<T>) Class.forName(prop.getValue());
jc = JAXBContext.newInstance(clazz);
u = jc.createUnmarshaller();
configFiles.put( clazz, u.unmarshal(inputStream));
我在 Eclipse 中有错误我不知道如何更正使用 put 方法?