第7次作业--访问权限、对象使用

题目1:在作业5的基础上,再创建一个柱体类,包含矩形对象、高和体积等三个成员变量,一个构造方法进行成员变量初始化,和计算体积、换底两个功能方法,在主类中输入长、宽、高,计算柱体体积,输入新的长、宽、高,创建新的矩形对象,并利用换底方法换底,再次计算柱体体积。

JuXing类

package ChenHong;     //打包

class JuXing{         //创建矩形类
	 double a;
	 double b;
	 double zc;
	 double area;     //定义成员变量
	 public JuXing(double a,double b){    //定义构造方法,成员变量初始化
	        this.a=a;
	        this.b=b;
	    }
}

ZhuTi类

package ChenHong;               //打包

public class ZhuTi {            //创建柱体类
		double h;
		double V;
		JuXing jx;              //定义高,体积,矩形对象成员变量
ZhuTi(double h,JuXing jx){       //定义构造方法初始化成员变量
      this.h=h;
      this.jx=jx;
    }
double getV(){              //定义求体积方法
	return  jx.a*jx.b*h;           //返回
   }
 public  void setJuXing(JuXing jx){       //换底方法
	 this.jx=jx;
   }
}

Test5主类

package ChenHong;             //打包
import java.util.*;           //引用输入包
public class Test5 {         //创建主类
		public static void main(String[] args) {       //创建主方法
		Scanner r = new Scanner(System.in); 
	        System.out.println("请输入柱体的长,宽,高");    //提示用户输入
	         double a,b,h;             //定义长,宽,高
	         a =r.nextDouble();
	         b =r.nextDouble();
	         h =r.nextDouble();       //从键盘获取输入数值
	        JuXing jx = new JuXing(a, b);        //创建矩形类对象    
	        ZhuTi zt = new ZhuTi(h, jx);          //创建柱体类对象
	        System.out.println("柱体的体积为:"+zt.getV());    //调用getV方法输出体积
	        System.out.println("输入换底后的长和宽");    //提示用户输入新的长和宽
	        double a1 =r.nextDouble();
	        double b1 =r.nextDouble();
	        JuXing jx1 = new JuXing(a1, b1);      //创建一个新的矩形类对象
	        zt.setJuXing(jx1);                    //调用换底方法
	        System.out.println("换底后的柱体体积为"+zt.getV());                //输出换底后体积
		}
	}

程序运行结果

题目2:设计名为MyInteger的类,它包括: int型数据域value 一个构造方法,当指定int值时,创建MyInteger对象 数据域value的访问器和修改器 isEven( )和isOdd( )方法,如果当前对象是偶数或奇数,返回true 类方法isPrime(MyInteger i),判断指定的值是否为素数,返回true 在主类中创建MyInteger对象,验证MyInteger类中各方法。

MyInteger类

package ChenHong;       //打包
public class MyInteger {      //创建MyInteger类
		int value;            //定义int型数据域
	MyInteger(int value) {             //定义构造方法
	 this.value =value;       //初始化成员变量
	}
	public int getValue() {   //创建value访问器和修改器
		return value;
	}
	public void setValue(int value) {
		this.value = value;
	}
	boolean isEven(){         //创建isEven方法
        if(getValue()%2==0)     //判断是否为偶数
         return true;
        else
         return false;
    }
	boolean isOdd(){         //创建isOdd()方法
        if(getValue()%2!=0)    //判断是否为奇数
         return true;
        else
         return false;
    }
	 static boolean isPrime(MyInteger i){       //判断value值是否为素数
	        for(int n=2;n<i.value;n++){         //通过循环判断  
	            if(i.value%n==0)
	            return false;    
	        }
	            return true;
	        }      
	    }

Index主类

package ChenHong;       //打包
import java.util.Scanner;    //引用输入类
public class Index {         //创建主类
	public static void main(String[] args) {     //创建主方法
		System.out.println("请输入一个数:");    //提示用户输入
		Scanner r= new Scanner(System.in);     
		int value;     //定义变量
		value=r.nextInt();         //从键盘获取输入数值
		 MyInteger index = new MyInteger(value);        //创建一个对象
		 System.out.println("该数是否为偶数"+index.isEven());     //判断是否为偶数
	     System.out.println("该数是否为奇数"+index.isOdd());      //判断是否为奇数
	     System.out.println("该数是否为素数"+index.isPrime(index));  //判断是否为素数
	}
}

程序运行结果

posted @ 2019-09-21 17:15  陈虹  阅读(144)  评论(0编辑  收藏  举报