我有一个程序,我试图抛出一个例外。我创建了一个自定义异常类在这里:异常类不工作
import java.io.*;
public class ShapeException extends Exception
{
public ShapeException(String message)
{
super(message);
}
}
这里的课堂,我尝试和实施例外:
import java.io.*;
public class Circle
{
private double radius;
public Circle(double inRadius)
{
if(inRadius < 0.0)
{
throw new ShapeException("Shape Exception Occurred...");
}
else
{
radius = inRadius;
}
}
public double getRadius()
{
return radius;
}
public void setRadius(double newRadius)
{
if(newRadius < 0.0)
{
throw new ShapeException("Shape Exception Occurred...");
}
else
{
radius = newRadius;
}
}
public double area()
{
return Math.PI * radius * radius;
}
public void stretchBy(double factor)
{
if(factor < 0.0)
{
throw new ShapeException("Shape Exception Occurred...");
}
else
{
radius = radius * factor;
}
}
public String toString()
{
return "Circle Radius: " + radius;
}
}
但是,这不会编译,给我的错误告诉我,我形状异常错误必须被捕获或声明为抛出。我究竟做错了什么?这是不是宣布?
https://docs.oracle.com/javase/tutorial/essential/exceptions/catchOrDeclare.html – shmosel
读取错误。谷歌他们,如果你必须。编译器不仅仅是在糟糕的一天中挑选你。他们的意思是!必须捕捉或声明“形状异常错误” – John3136