Java.work7 访问权限、对象使用作业20194651

题目1:

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

代码:

1、App.java

 1 /**
 2  * 主类,包含一个主方法;
 3  * 输出体积,调用矩形对象的修改器换底,换底后的体积;
 4  */
 5 public class App {
 6     public static void main(String[] args) {
 7         Qua qua = new Qua(6,new Rec(3,4));
 8         /*
 9          * 创建四棱柱对象和为底的长宽和四棱柱的高赋值(长3宽4高6)
10          */
11         System.out.println("四棱柱体积是:"+qua.get_V());
12         qua.setr(new Rec(5,2));
13         System.out.print("换底后四棱柱体积是:"+qua.get_V());
14     }
15 
16 }

2、Rec.java

 1 /**
 2  * 矩形类,包含两个成员变量,两个方法;
 3  * 成员变量a,b分别表示矩形的长和宽;
 4  * 构造方法用于修改成员变量的值,get_area计算矩形面积;
 5  */
 6 public class Rec {
 7 
 8     double a;
 9     double b;
10     Rec(double a, double b){
11         this.a = a;
12         this.b = b;
13     }
14     public double get_area(){
15         //计算面积
16         return  a*b;
17     }
18 }

3、Qua.java

 1 /** 
 2  * 柱体类,包含三个成员变量,三个方法;
 3  * 成员变量r为底,h为高,v为体积;
 4  * 构造方法修改成员变量,r的修改器进行换底,ger_V计算柱体体积;
 5  */
 6 public class Qua {
 7     //矩形对象,柱体的底
 8     Rec r ; 
 9     double h;
10     double v;
11     Qua(double h, Rec r){
12         //构造方法
13         this.h = h;
14         this.r = r;
15     }
16     public void setr(Rec r){
17         //修改器
18         this.r = r;
19     }
20     public double get_V( ){
21         //计算柱体体积
22         return r.get_area() *h;
23     }
24 }

运行结果:

 

 

 

题目二:

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

代码:

1、Test.java

 1 /**
 2  * 主类,测试验证MyInteger类中的各个方法
 3  */
 4 package cn.edu.ccut.object1;
 5 
 6 public class Test {
 7 
 8     public static void main(String[] args) {
 9         MyInteger obj = new MyInteger(6);//创建对象        
10         System.out.println(""+obj.getvalue()+"是否为奇数:"+obj.isOdd());
11         System.out.println(""+obj.getvalue()+"是否为偶数:"+obj.isEven());
12         System.out.println(""+obj.getvalue()+"是否为素数:"+MyInteger.isPrime(obj));
13         obj.setvalue(11);//利用修改器修改value的值
14         System.out.println(""+obj.getvalue()+"是否为奇数:"+obj.isOdd());
15         System.out.println(""+obj.getvalue()+"是否为偶数:"+obj.isEven());
16         System.out.println(""+obj.getvalue()+"是否为素数:"+MyInteger.isPrime(obj));
17     }
18 }

2、MyInteger.java

 1 /**
 2  * MyInteger类包含一个成员变量value,六个方法;
 3  * 成员变量value存储输入的数据;
 4  * 构造方法初始化,value的访问器和修改器,isEven判断是否为偶数,isOdd判断是否为奇数,isPrime判断是否为素数;
 5  */
 6 package cn.edu.ccut.object1;
 7 
 8 public class MyInteger {
 9      static int value ;
10     
11     MyInteger(int value){ //构造方法
12         MyInteger.value = value; 
13     }
14     
15     public int  getvalue() {//访问器
16         return value;
17     }
18     
19     public void setvalue(int value) {//修改器
20         MyInteger.value = value;
21     }
22     
23     public boolean isEven(){//判断是否为偶数
24         if(value%2 == 0){
25             return true;
26         }
27         else
28             return false;
29     }
30     
31     public boolean isOdd(){//判断是否为奇数
32         if(value%2 == 0){
33             return false;
34         }
35         else
36             return true;
37     }
38     
39     public static boolean isPrime(MyInteger i){//判断是否为素数
40         int j;
41         for(j=2;j<value/2;j++){
42             if(value % j ==0){
43                 return false;
44             }
45         }
46         return true;
47     }
48 }

运行结果:

 

posted @ 2019-09-21 12:59  chris丶w  阅读(227)  评论(0编辑  收藏  举报