• [unchecked] 对作 为原始类型Hashtable的成员的put(K,V)的调用未经过检查。。。


    问题:

    C:UsersAdministratorDesktopjavaSoundApplet.java:212: 警告: [unchecked] 对作
    为原始类型Hashtable的成员的put(K,V)的调用未经过检查
    put(audioFileName,clip);
    ^
    其中, K,V是类型变量:
    K扩展已在类 Hashtable中声明的Object
    V扩展已在类 Hashtable中声明的Object
    1 个警告

    代码:

     1 class SoundTable extends java.util.Hashtable{
     2     public SoundTable(int initialCapacity){
     3         super(initialCapacity);
     4     }
     5     public AudioClip getClip(String audioFileName){
     6         return (AudioClip)get(audioFileName);
     7     }
     8     public void putClip(AudioClip clip,String audioFileName){
     9         put(audioFileName,clip);
    10     }
    11 }

    原因:

    因为用的是Java SE 7 吧。
    在之前的SE中,Hashtable是javax.swing.Hashtable。在SE7中声明为泛型了,javax.swing.Hashtable<K,V>。
    因此你需要在实例化它时指明传入指定参数类型,不然就报类型不安全的warning了。
    class SoundTable extends java.util.Hashtable改为:class SoundTable extends java.util.Hashtable<String,AudioClip>就OK了。

  • 相关阅读:
    ios 重构笔记
    ios uiwindow笔记
    ios静态库笔记
    ios app提交之前需要哪几个证书
    int、long、long long取值范围
    字节概述
    序列化概述
    LeetCode 最大连续子数列值
    198. LeetCode 打家劫舍
    git自定义关键字
  • 原文地址:https://www.cnblogs.com/qiernonstop/p/3620784.html
Copyright © 2020-2023  润新知