Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/348.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我在考试课上遗漏了什么?_Java_Junit - Fatal编程技术网

Java 我在考试课上遗漏了什么?

Java 我在考试课上遗漏了什么?,java,junit,Java,Junit,我一直收到错误(java:找不到symbol:方法getType()) 公共类Shape{getCircleRadius和getType方法在Shape类上,但您是代码引用Shape.ShapeType.getCircleRadius 您需要在Shape实例上引用getCircleRadius,该实例可能是用新的Shape(ShapeType,double)Shape.ShapeType.getType()创建的;属于Shape类,而不是ShapeType类。而且,它不是静态的,因此您需要首先实

我一直收到错误(java:找不到symbol:方法getType())


公共类Shape{

getCircleRadius
getType
方法在
Shape
类上,但您是代码引用
Shape.ShapeType.getCircleRadius


您需要在
Shape
实例上引用
getCircleRadius
,该实例可能是用
新的Shape(ShapeType,double)
Shape.ShapeType.getType()创建的;
属于
Shape
类,而不是
ShapeType
类。而且,它不是静态的,因此您需要首先实例化
Shape
我不是已经在ShapeTest类的第二行实例化了形状吗?第二行在第一行之后,这就是问题所在。啊,好的。我切换了它们。但是它是“无法解析方法getType”,即使我在Shape.edit(add to)中用新代码定义了它。getType()方法如何?编译器说我无法实例化枚举?此外,即使在Shape实例上引用getCircleRadius,测试也会失败…(java.lang.AssertionError:使用assertEquals(预期、实际、增量)为了比较浮点数,在ShapeTest.getCircleRadius(ShapeTest.java:15)
getType()
也在
Shape
类中,因此您可以对其执行相同的操作。此外,由于您处理的是
double
s,您应该使用
assertEquals(5.0,Shape.getCircleRadius(),0.0001)
或其他一些非常小的增量。通常情况下,在进行计算时,浮点数并不精确。