Hastily 2021-06-21 22:34 采纳率: 50%
浏览 925
已采纳

定义 Circle 类,包含成员变量半径 r 和计算面积的方法 getArea()自定义异常类.

定义 Circle 类,包含成员变量半径 r 和计算面积的方法 getArea()。自定义异常类, 当半径小于等于 0 的时候抛出异常,计算圆面积,如有异常输出异常信息。

  • 写回答

1条回答 默认 最新

  • 小P聊技术 2021-06-21 22:38
    关注
    /**
    *需求:定义一个circle类,其中包括计算圆面积和圆周长的方法,若输入的半径小于0,则抛出一个自定义异常。
    */
    class lenghException extends Exception
    {
    	private double value;
    	lenghException(String msg,double value)
    	{
    		super(msg);
    		this.value=value;
    	}
    	public double getValue()
    	{
    		return value;
    	}
    }
    class circle
    {
    	private double r;
    	static final double PI=3.14;
    	public void setR(double r)throws lenghException
    	{
    		if (r<0)
    			throw new lenghException("出现了半径为负数的情况,你的半径不能为负数",r);
    		this.r=r;
    			
    	}
    	public void getarea()
    	{
    		System.out.println(r*r*PI); 
    	}
    	public void getlengh()
    	{
    		System.out.println(2*r*PI);
    	}
    }
    public class CircleExceptionDemo 
    {
    	public static void main(String[] args)throws lenghException
    	{
    		circle circle = new circle();
    		try
    		{
    				circle.setR(5);
    				circle.getarea();
    				circle.getlengh();
    		}
    		catch(lenghException e)
    		{
    			System.out.println(e.toString());
    			System.out.println("错误的数是:"+e.getValue());
    		}
    		circle circle2= new circle();
    		try
    		{
    				circle2.setR(-2);
    				circle2.getarea();
    				circle2.getlengh();
    		}
    		catch(lenghException e)
    		{
    			System.out.println(e.toString());
    			System.out.println("错误的数是:"+e.getValue());
    		}
    	}
     
    }

    输出结果如下:

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 linux驱动,linux应用,多线程
  • ¥20 我要一个分身加定位两个功能的安卓app
  • ¥15 基于FOC驱动器,如何实现卡丁车下坡无阻力的遛坡的效果
  • ¥15 IAR程序莫名变量多重定义
  • ¥15 (标签-UDP|关键词-client)
  • ¥15 关于库卡officelite无法与虚拟机通讯的问题
  • ¥15 目标检测项目无法读取视频
  • ¥15 GEO datasets中基因芯片数据仅仅提供了normalized signal如何进行差异分析
  • ¥100 求采集电商背景音乐的方法
  • ¥15 数学建模竞赛求指导帮助