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

题目一

  1. 题目

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

  2. 源程序

    Rectancle.java

     

     1 /**
     2  * 1.文件功能:矩形类 求矩形面积和周长
     3  * 2.成员变量:height高   width宽  area面积  perimeter周长
     4  * 3.方法:height和width访问器和修改器  Area返回面积 Per返回周长
     5  */
     6 class Rectancle{
     7     double height;//
     8     double width;//
     9     double area;//面积
    10     double perimeter;//周长
    11     
    12     public double getHeight() {
    13         return height;
    14     }
    15     public void setHeight(double height) {
    16         this.height = height;
    17     }
    18     public double getWidth() {
    19         return width;
    20     }
    21     public void setWidth(double width) {
    22         this.width = width;
    23     }
    24     
    25     double Area() {
    26         area=height*width;
    27         return area;
    28     }
    29     double Per() {
    30         perimeter = 2*(height+width);
    31         return perimeter;
    32     }
    33     
    34 }

     

    RectangularCylinder.java

     

     1 /**
     2  * 1.文件功能:矩形柱体类 计算柱体体积
     3  * 2.成员变量:rec矩形对象 height高 volume体积
     4  * 3.方法:height访问器修改器 setRec换底  CalVolume求体积
     5  */
     6 public class RectangularCylinder {
     7     Rectancle rec;//
     8     double height;//
     9     double volume;//体积
    10     
    11     RectangularCylinder(){
    12         height = 0;
    13         volume = 0;
    14     }
    15 
    16     public double getHeight() {
    17         return height;
    18     }
    19 
    20     public void setHeight(double height) {
    21         this.height = height;
    22     }
    23     
    24     public void setRec(Rectancle rec) {
    25         this.rec =rec;
    26     }//换底
    27     
    28     double CalVolume() {s
    29         volume = rec.area*height;
    30         return volume;
    31     }//求体积
    32 }

     

    App.java

     

     1 /**
     2  * 1.文件功能:输入长宽高求柱体体积 换底再求体积
     3  * 2.变量:A_1矩形1 A_2矩形2 B柱体
     4  * 3.方法:主方法
     5  */
     6 import java.util.*;
     7 public class App {
     8 
     9     public static void main(String[] args) {
    10         Rectancle A_1 = new Rectancle();
    11         RectangularCylinder B = new RectangularCylinder();
    12         //创建矩形 柱体对象
    13         B.setRec(A_1);
    14         
    15         Scanner in = new Scanner(System.in);
    16         System.out.println("请输入矩形的宽和长");
    17         double h_1 = in.nextDouble();
    18         double w_1 = in.nextDouble();
    19         A_1.setHeight(h_1);
    20         A_1.setWidth(w_1);
    21         
    22         System.out.println("请输入柱体的高");
    23         double h_2 = in.nextDouble();
    24         B.setHeight(h_2);
    25         
    26         A_1.Area();
    27         
    28         System.out.println("柱体的体积是:"+B.CalVolume());
    29         
    30         
    31         Rectancle A_2 = new Rectancle();
    32         
    33         System.out.println("请输入新的矩形的宽和长");
    34         double h_3 = in.nextDouble();
    35         double w_2 = in.nextDouble();
    36         A_2.setHeight(h_3);
    37         A_2.setWidth(w_2);
    38         
    39         A_2.Area();
    40         B.setRec(A_2);
    41         
    42         System.out.println("新的柱体的体积是:"+B.CalVolume());
    43     }
    44 
    45 }

     

  3. 运行结果

     

题目二

  1. 题目

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

  2. 源程序

     main.java

     

     1 /**
     2  * 1.文件功能:输入一个数 调用MyInteger 判断这个数是否是素数、偶数、奇数
     3  * 2.成员变量:n输入的数
     4  * 3.方法:主方法
     5  */
     6 import java.util.*;
     7 public class main {
     8 
     9     public static void main(String[] args) {
    10         MyInteger i = new MyInteger();
    11         
    12         System.out.println("请输入一个数");
    13         Scanner in = new Scanner(System.in);
    14         int n = in.nextInt();
    15         i.setValue(n);
    16         
    17         System.out.println("这个数是偶数 "+i.isEven());
    18         System.out.println("这个数是奇数 "+i.isOdd());
    19         System.out.println("这个数是素数 "+i.isPrime(i));
    20     }
    21 
    22 }

     

    MyInteger.java

     

     1 /**
     2  * 1.文件功能:判断一个数是否是素数、偶数、奇数
     3  * 2.成员变量:value 需要判断的数的值
     4  * 3.方法:value修改器访问器 isEven判定是否是偶数 isOdd判定是否奇数 isPrime判定是否素数
     5  */
     6 public class MyInteger {
     7     int value;
     8     
     9     MyInteger(){
    10         value = 0;
    11     }//构造方法
    12     
    13     void setValue(int value) {
    14         this.value = value;
    15     }
    16     int value() {
    17         return value;
    18     }//value修改器访问器
    19     
    20     boolean isEven() {
    21         if(value%2 == 0)
    22             return true;
    23         else
    24             return false;
    25     }//判断是否是偶数
    26     
    27     boolean isOdd() {
    28         if(value%2 == 1)
    29             return true;
    30         else
    31             return false;
    32     }//判断是否是奇数
    33     
    34     static boolean isPrime(MyInteger i) {
    35         int i1;
    36         for(i1=2;i1<i.value;i1++) {
    37             if(i.value%i1 == 0) {
    38                 return false;
    39             }    
    40         }
    41         return true;
    42     }//判断是否是素数
    43 }

     

  3. 运行结果

     

posted @ 2019-09-22 11:58  张博涵  阅读(136)  评论(0)    收藏  举报