小编fir*_*uel的帖子

使用JDK 8编译泛型方法时损坏

我有一些遗留代码Box用于将Serializable数据放入并获取数据Map,Oracle JRE 1.8 Update 102在编译时运行正常Oracle JDK 1.7 Update 80.但是当我编译它时,它无法正常运行Oracle JDK 1.8 Updater 102.我在泛型get函数方面遇到了一些问题.

SSCCE Box使用有问题的通用get函数从实例输出格式化日期:

import java.io.Serializable;
import java.util.Date;
import java.util.HashMap;

public class Box implements Serializable{

   private HashMap<String, Serializable> values = new HashMap<String, Serializable>();

   public <T extends Serializable> T get(String key){

      return (T) this.values.get(key);
   }

   public void put(String key,
                   Serializable value){

      this.values.put(key,
                      value);
   }

   public static void main(String[] args){

      Box box = new …
Run Code Online (Sandbox Code Playgroud)

java generics java-8

4
推荐指数
1
解决办法
595
查看次数

标签 统计

generics ×1

java ×1

java-8 ×1