java第七次作业
一、
题目(1)
题目1:在作业5的基础上,再创建一个柱体类,包含矩形对象、高和体积等三个成员变量,一个构造方法进行成员变量初始化,和计算体积、换底两个功能方法,
在主类中输入长、宽、高,计算柱体体积,输入新的长、宽、高,创建新的矩形对象,并利用换底方法换底,再次计算柱体体积。
二、代码段
(1)Rectangle类
package zcy; /**在矩形类中定义矩形的长,宽,以及面积的方法*/ public class Rectangle { //定义矩形类 private double length;//长 private double width;//宽 public Rectangle(double length,double width){ this.length=length; this.width=width; } public double getArea(){ return length*width; }
(2)Column类
package zcy; //定义一个柱体类 public class Column { private double height;//柱体高 private double volume;//柱体体积 Rectangle rec;//矩形对象 //构造方法进行成员变量初始化 Column(double height,Rectangle rec){ this.height=height; this.rec=rec; } //计算体积方法 double getVolume(){ return volume=height*rec.getArea();//柱体体积求法 } //换底方法 public void setRectangle(Rectangle rec){ this.rec=rec; } }
(3)Test类
package zcy; import java.util.Scanner; import zcy.*; public class Test { public static void main(String[] args) { Scanner reader = new Scanner(System.in); System.out.println("请输入柱体的长,宽,高"); //将长宽高进行输入操作 double length = reader.nextDouble(); double width =reader.nextDouble(); double height = reader.nextDouble(); //定义矩形类对象 Rectangle rec = new Rectangle(length, width); //定义柱体类对象 Column col = new Column(height, rec); //计算体积 System.out.println("柱体的体积为:"+col.getVolume()); //换底 System.out.println("输入换底后的长和宽"); double length1 =reader.nextDouble(); double width1 = reader.nextDouble(); //实例化一个矩形类 Rectangle rec1 = new Rectangle(length1, width1); col.setRectangle(rec1);//调用换底方法 System.out.println("换底后的矩形面积为"+rec1.getArea()); System.out.println("换底后的柱体体积为"+col.getVolume()); } }
三、运行结果
题目(2)
设计名为MyInteger的类,它包括:int型数据域value 一个构造方法,当指定int值时,创建MyInteger对象 ,数据域value的访问器和修改器 isEven( )和isOdd( )方法,
如果当前对象是偶数或奇数,返回true ,类方法isPrime(MyInteger i),判断指定的值是否为素数,返回true ,在主类中创建MyInteger对象,验证MyInteger类中各方法
代码段:
(1)MyInteger类
package ccut; //设计一个MyInteger类 public class MyInteger { private int value;//int型数据域value //特定值的构造方法 MyInteger() { this.value =value; } //设置数据域value的访问器和修改器 public int getValue() { return value; //访问器 } public void setValue(int value) { this.value = value; //修改器 } //创建isEven方法 boolean isEven(){ if(getValue()%2==0){ return true; }else{ return false; } } //创建isOdd()方法 boolean isOdd(){ if(getValue()%2!=0){ return true; }else{ return false; } } //创建类方法isPrime static boolean isRrime(MyInteger i){//判断指定的值是否为素数,返回true int m,sum=0; for(m=2;m<i.value/2;m++){ //for循环筛选所有数 if(i.value%m==0){ sum++; } } if(sum==0){ return true; }else{ return false; } } }
(2)Test类
package ccut; import java.util.Scanner; import ccut.MyInteger; public class Test { /** * @param args */ public static void main(String[] args) { // 验证MyPoint类中所有方法 Scanner reader = new Scanner(System.in); System.out.println("请输入一个数"); int value = reader.nextInt(); MyInteger i = new MyInteger();//创建MyInteger类对象 System.out.println(i.isEven());//判断偶数 System.out.println(i.isOdd());//判断奇数 System.out.println(i.isRrime(i));//判断素数 } }
三、运行结果