问答题 [说明] 以下程序为类类型的变量应用实例,通过异常处理检验了类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的半径为负值,则抛出异常处理。