长方体计算(类的定义;构造方法设计;成员变量和成员方法的设计;封装的设计;this关键字的应用)Java

定义长方体类Cuboid,要求如下:(1)私有成员变量包括length、宽width和高heigth;(2构造方法包括一个公共的空构造方法,一个能够初始化所有成员变量的构造方法;(3)包括所有的setter和getter方法,其中,setter方法要求对形参进行验证,例如,长、宽和高都大于0;(4)功能方法包括计算表面积getArea()、计算体积getCubage()、判断是否正方体isCube()、输出该长方体的长、宽和高printCuboid()、绘制该长方体(给出提示信息即可)drawing()。

测试一要求如下:(1)利用空构造方法创建一个新的长方体对象cuboidA,然后利用setter方法设置长、宽和高分别为10.5、2.6和18.6;(2)调用printCuboid()方法,输出cuboidA的基本信息,调用isCube()方法判断是否正方体;(3)调用方法drawing()模拟绘制该长方体。

测试二要求如下:(1)利用构造方法创建一个具有长、宽和高分别为2.5、6.8和8.0的长方体对象cuboidB,然后利用setLength()方法修改length为4.6;(2)调用getArea()方法计算表面积;(3)调用getCubage计算该长方体的体积。

 

按题目要求先创建一个Cuboid的类(不要勾选main)

package cn.jbit.cuboid;

//定义长方体类Cuboid
public class Cuboid {
	
	//定义、初始化私有成员变量
	private double length=0.0;
	private double width=0.0;
	private double heigh=0.0;
	
	//长length的封装
	public double getLength() {
		return length;
	}
	public void setLength(double length) {
		if(length>0) {
			this.length=length;
		}
		else {
			this.length=10;
			System.out.println("输入的长小于0,默认值为10,请重新输入!");
		}
	}
	
	//宽width的封装
	public double getWidth() {
		return width;
	}
	public void setWidth(double width) {
		if(width>0) {
			this.width=width;
		}
		else {
			this.width=20;
			System.out.println("输入的宽小于0,默认值为20,请重新输入!");
		}
	}
	
	//高heigh的封装
	public double getHeigh() {
		return heigh;
	}
	public void setHeigh(double heigh) {
		if(heigh>0) {
			this.heigh=heigh;
		}
		else {
			this.heigh=10;
			System.out.println("输入的高小于0,默认值为10,请重新输入!");
		}
	}
	
	//定义无参构造方法
	public Cuboid() {
		
	}
	
	//定义能初始化所有成员变量的构造方法
	public Cuboid(double length,double width,double heigth) {
		super(); 
		this.length=length;
		this.width=width;
		this.heigh=heigh;
	}
	
	//定义计算表面积的功能方法
	public double getArea() {
		double area=2*(this.length*this.width+this.length*this.heigh+this.width*this.heigh);
		return area;
	}
	
	//定义计算体积的功能方法
	public double getCubage() {
		double cubage=this.length*this.width*this.heigh;
		return  cubage;
	}
	
	//定义判断是否为正方形的功能方法
	public boolean isCube() {
		if((this.length==this.width)&&(this.width==this.heigh)) {
			return true;
		}
		else {
			return false;
		}
	}
	
	//定义输出该长方体的长、宽和高地功能方法
	public void printCuboid() {
		System.out.println("长方体的长为:"+this.length);
		System.out.println("长方体的宽为:"+this.width);
		System.out.println("长方体的高为:"+this.heigh);
	}
	
	//定义绘制该长方体的功能方法
	public void drawing() {
		System.out.println("正在绘制长方体...");
	}

}

再创建一个测试类TestCuboid

package cn.jbit.cuboid;
public class TestCuboid {

	public static void main(String[] args) {
		Cuboid in =new Cuboid();
		
		//测试一
		//定义无参构造方法
		Cuboid cuboidA=new Cuboid();
		
		//利用setter方法设置长、宽、高
		cuboidA.setLength(10.5);
		cuboidA.setWidth(2.6);
		cuboidA.setHeigh(18.6);
		
		//输出菜单
		System.out.println("----------测试一----------");
		
		//调用printCuboid()方法,输出cuboidA的基本信息
		cuboidA.printCuboid();
		
		//调用isCube()方法判断是否是正方体
		cuboidA.isCube();
		boolean a=cuboidA.isCube();
		if(a==true){
			System.out.println("cuboidA是正方体");
		}
		else {
		}	System.out.println("cuboidA不是正方体");
		
		//调用drawing()模拟绘制该长方体
		Cuboid dr=new Cuboid();
		dr.drawing();
		cuboidA.printCuboid();

		
		//测试二
		//输出菜单
		System.out.println("----------测试二----------");
		
		//构造对象cuboidB
		Cuboid cuboidB=new Cuboid();
		cuboidB.setLength(2.5);
		cuboidB.setWidth(6.8);
		cuboidB.setHeigh(8.0);
		//利用setLength()方法修改length为4.6
		cuboidB.setLength(4.6);
		
		//调用getArea()方法计算长方体表面积
		cuboidB.getArea();
		System.out.println("长方体表面积:"+cuboidB.getArea());
		
		//调用getCubage()方法计算长方体体积
		cuboidB.getCubage();
		System.out.println("长方体体积:"+cuboidB.getCubage());	
		
		//调用printCuboid()方法,输出cuboidA的基本信息
		cuboidB.printCuboid();

	}

}

 

  • 4
    点赞
  • 44
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值