第7次作业--访问权限、对象使用
题目1:在作业5的基础上,再创建一个柱体类,包含矩形对象、高和体积等三个成员变量,一个构造方法进行成员变量初始化,和计算体积、换底两个功能方法,在主类中输入长、宽、高,计算柱体体积,输入新的长、宽、高,创建新的矩形对象,并利用换底方法换底,再次计算柱体体积。
/** 创建一个ZhuTi类,定义成员变量:长 length,宽 width,高 high,矩形对象 p,定义一个构造方法进行变量初始化和一个求体积方法V(),在主方法里输入长,宽,高,输出体积。*/
ZhuTi 类:
import java.util.Scanner; public class ZhuTi { double length; double width; Rectangle p; double high; public ZhuTi(Rectangle p,double high) { this.high=high; this.p=p; } public double V() { return p.area()*high; } public static void main(String[] args) { // TODO Auto-generated method stub Scanner sc=new Scanner(System.in); while(true) { System.out.print("请输入矩形类的长、宽,四棱柱类的高:\n"); double x=sc.nextDouble(); double y=sc.nextDouble(); double z=sc.nextDouble(); Rectangle r=new Rectangle(); r.set(x,y); ZhuTi t=new ZhuTi(r,z); System.out.print("柱体体积为:"+t.V()+"\n"); } } }
运行截图:
题目2:设计名为MyInteger的类,它包括: int型数据域value 一个构造方法,当指定int值时,创建MyInteger对象 数据域value的访问器和修改器 isEven( )和isOdd( )方法,如果当前对象是偶数或奇数,返回true 类方法isPrime(MyInteger i),判断指定的值是否为素数,返回true 在主类中创建MyInteger对象,验证MyInteger类中各方法。
/** 创建MyInteger 类,int型数据域value, 一个构造方法,value的访问器和修改器,判断是否为偶数的方法 isEven( ) 和判断是否为奇数的方法 isOdd( ),定义一个类方法isPrime(MyInteger i),判断指定的值是否为素数,
创建Exam 类,验证MyInteger 类中各方法 */
MyInteger 类:
import java.util.Scanner; public class MyInteger { public int value; public MyInteger(int value) { this.value=value; } public int getValue() { return value; } public void setValue(int value) { this.value = value; } public boolean isEven() { if(value%2==0) return true; else return false; } public boolean isOdd() { if(value%2!=0) return true; else return false; } static boolean isPrime(MyInteger i) { int j=1; if(i.value>2) for(j=2;j<=Math.sqrt(i.value);j++) if(i.value%j==0) break; if(i.value>2&&j<=Math.sqrt(i.value)) return false; return true; } }
Exam 类:
import java.util.Scanner; public class Exam { public static void main(String[] args) { // TODO Auto-generated method stub Scanner reader=new Scanner(System.in); System.out.print("请输入一个数:"); int value=reader.nextInt(); MyInteger m=new MyInteger(value); System.out.print("是否为偶数:"+m.isEven()+"\n"); System.out.print("是否为奇数:"+m.isOdd()+"\n"); System.out.print("是否为素数:"+m.isPrime(m)+"\n"); } }
运行截图: