下面的代码段在NetBeans 6.9中导致此警告。
[rawtypes] found raw type: org.openide.nodes.PropertySupport.Reflection
missing type parameters for generic class org.openide.nodes.PropertySupport.Reflection<T>
Property dataProp = new PropertySupport.Reflection(t, dataStore.getFloat3DClass(),
workingData);
/**
* Gets the Class object associated with the primitive 3d float array (i.e., float[][][]).
*
* @return the Class object.
*/
public Class<?> getFloat3DClass()
{
if (class3DFloat == null)
{
try
{
class3DFloat = Class.forName("[[[F");
}
catch (ClassNotFoundException ex)
{
Exceptions.printStackTrace(ex);
}
}
return class3DFloat;
}
在运行时,
getFloat3DClass()
返回其值是类Class
的float[][][]
对象。如何在设计时指定此名称并避免出现此警告? 最佳答案
你辛苦了制作dataStore.getFloat3DClass()
时不要使用PropertySupport.Reflection
,请使用float[][][].class
,它将起作用。并且该值也将由运行时为您缓存。