gpt4 book ai didi

java - EasyMock:如何在没有警告的情况下创建泛型类的模拟?

转载 作者:IT老高 更新时间:2023-10-28 20:41:28 25 4
gpt4 key购买 nike

代码

private SomeClass<Integer> someClass;
someClass = EasyMock.createMock(SomeClass.class);

给我一​​个警告“类型安全:SomeClass 类型的表达式需要未经检查的转换才能符合 SomeClass ”。

最佳答案

AFAIK,当涉及到类名文字时,您无法避免未经检查的警告,而 SuppressWarnings 注释是处理此问题的唯一方法。

请注意,尽可能缩小 SuppressWarnings 注释的范围是一种很好的形式。您可以将此注释应用于单个局部变量赋值:

public void testSomething() {

@SuppressWarnings("unchecked")
Foo<Integer> foo = EasyMock.createMock(Foo.class);

// Rest of test method may still expose other warnings
}

或使用辅助方法:

@SuppressWarnings("unchecked")
private static <T> Foo<T> createFooMock() {
return (Foo<T>)EasyMock.createMock(Foo.class);
}

public void testSomething() {
Foo<String> foo = createFooMock();

// Rest of test method may still expose other warnings
}

关于java - EasyMock:如何在没有警告的情况下创建泛型类的模拟?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56954/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com