问答题
[说明]
以下程序为类类型的变量应用实例,通过异常处理检验了类CCircle的变量的合法性,即参数半径应为非负值。仔细阅读代码和相关注释,将程序补充完整。
[JAVA代码]
//定义自己的异常类
class CCircleException extends Exception
{
}
// 定义类 CCircle
class CCircle
{
private double radius;
public void setRadius ( double r ){{U}} (1) {{/U}}
{
if ( r<0 ) {
{{U}} (2) {{/U}}
}
else
{{U}} (3) {{/U}}
}
Public void show ( ) {
System. out. println ( "area="+3.14*radius*radius );
}
}
public class ciusample
{
public static void main ( String args[] )
{
CCircle cir=new CCircle( );
{{U}} (4) {{/U}}{
cir. setRadius ( -2.0 )
}
{{U}} (5) {{/U}}
{
System. out. println ( e+" throwed" ) ;
}
cir. show( ) ;
}
}
【正确答案】
【答案解析】(1)throws CCircleException
(2)throw new CCircleException(); //抛出异常
(3)radius=r;
(4)try
(5)catch(CCircleException e) //捕捉由setRadius()抛出的异常
[解析]
本题主要考查JAVA语言中Class类型的变量应用。本段代码中对于类Ccircle的半径变量进行合法性检验,如果圆Ccircle的半径为负值,则抛出异常处理。