编程语言
首页 > 编程语言> > 我无法在Java中找到“未检查或不安全操作”警告的原因

我无法在Java中找到“未检查或不安全操作”警告的原因

作者:互联网

根据标题,我在一些代码中努力找到“未经检查或不安全的操作”警告的原因.

如果我有以下代码,它编译时没有任何警告:

public void test()
{
     Set<String> mySet = new HashSet<String>();
     Set<String> myNewSet = mySet;
     //do stuff
}

现在,如果我改变mySet的来源,特别是作为方法调用的结果,我得到“未经检查的yadda yadda”警告:

public void test()
{
    Set<String> myNewSet = this.getSet();
    //do stuff
}

public Set getSet()
{
    Set<String> set = new HashSet<String>();
    return set;
}

我试过并尝试弄清楚问题是什么,我完全被难倒了.无论我使用集合还是列表,都会出现此问题.为什么getSet方法返回的Set与第一个示例中的Set有什么不同?

任何帮助都会非常感激,因为虽然警告不是世界末日,但它却让我感到害怕!

标签:unchecked,java,generics
来源: https://codeday.me/bug/20190730/1582507.html