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


    第一题:

    一、题目

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

    二、代码

    1.Rectiangle.java

    package Ninth;
    
    public class Rectiangle {                      //Rectiangle类
        double a;                             //成员变量a
        double b;                             //成员变量b
    
        Rectiangle() {                          //无参构造方法
            a = 0;
            b = 0;
        }
    
        Rectiangle(double a, double b) {               //有参构造方法
            this.a = a;
            this.b = b;
        }
    
        public double getA() {                     //访问器
            return a;
        }
    
        public void setA(double a) {                  //修改器
            this.a = a;
        }
    
        public double getB() {
            return b;
        }
    
        public void setB(double b) {
            this.b = b;
        }
    
        public double getArea(double a, double b) {          //方法计算area值
            // TODO Auto-generated method stub
            double area = a * b;
            return area;
        }
    
    }

    2.Quadrangular.java

    package Ninth;
    
    public class Quadrangular {                      //类Quadrangular
        Rectiangle rec;
        double h;
        double area;
    
        Quadrangular() {
            h = 0;
            area = 0;
        }
    
        Quadrangular(double h, double area) {
            this.h = h;
            this.area = area;
        }
    
        public double getArea() {
            return area;
        }
    
        public void setArea(double area) {             //在访问器里面将area值给传递出去
            this.area = rec.getArea(rec.getA(), rec.getB());
        }
    
        public Rectiangle getRec() {
            return rec;
        }
    
        public void setRec(Rectiangle rec) {
            this.rec = rec;
        }
    
        public double getH() {
            return h;
        }
    
        public void setH(double h) {
            this.h = h;
        }
    
        public double getV(double area, double h) {            //方法计算体积V
            double v = area * h;
            return v;
        }
    
    }

    3.Test.java

    package Ninth;
    
    import java.util.Scanner;
    
    public class Test {
    
        /**
         * @param args
         */
        public static void main(String[] args) {
            // TODO Auto-generated method stub
            Rectiangle rec = new Rectiangle();                            //创建rec的对象
            Scanner sc = new Scanner(System.in);                           //键盘输入
            System.out.println("请输入底面矩形的长:");
            double a = sc.nextDouble();
            System.out.println("请输入底面矩形的宽:");
            double b = sc.nextDouble();
            System.out.println("请输入柱体的高度:");
            double h = sc.nextDouble();
            Quadrangular qua = new Quadrangular();                          //创建qua的对象
            double area = rec.getArea(a, b);                              //通过Rectiangle的getArea方法得出area值
            System.out.println("柱体的体积是:" + qua.getV(area, h));                //通过Quadrangular的getV方法得出V值
            System.out.println("请输入新的矩形");
            System.out.println("请输入底面矩形的长:");
            double a1 = sc.nextDouble();
            System.out.println("请输入底面矩形的宽:");
            double b1 = sc.nextDouble();
            System.out.println("请输入柱体的高度:");
            double h1 = sc.nextDouble();
            double area1 = rec.getArea(a1, b1);
            System.out.println("柱体的体积是:" + qua.getV(area1, h1));
            
        }
    
    }

    三、运行结果

    第二题:

    一、题目

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

    二、代码

    1.MyInteger.java

    package Tenth;
        
    public class MyInteger {                                                        //创建MyInteger类
        int value;                                                                    //成员变量value
    
        MyInteger() {                                                                //无参构造方法
            value = 0;
        }
    
        MyInteger(int value) {                                                        //有参构造方法
            this.value = value;
        }
    
        public int getValue() {                                                        //访问器
            return value;
        }
    
        public void setValue(int value) {                                            //修改器
            this.value = value;
        }
    
        public boolean isEven(int value) {                                            //方法求是否为偶数
            if (value % 2 == 0) {
                return true;
            } else {
                return false;
            }
        }
    
        public boolean isOdd(int value) {                                            //方法求是否为奇数
            if (value % 2 != 0) {
                return true;
            } else {
                return false;
            }
        }
    
        public boolean isPrime(int value) {                                            //方法求是否为素数
            int number = 0;
            for (int i = 2; i <= value / 2; i++) {
                if (value % i == 0) {
                    number = 1;
                } else {
                    number = 0;
                }
            }
            if (number == 1) {
                return false;
            }
            return true;
        }
    
    }

    2.Test.java

    package Tenth;
    
    import java.util.Scanner;
    
    public class Test {
    
        /**
         * @param args
         */
        public static void main(String[] args) {
            // TODO Auto-generated method stub
            Scanner sc = new Scanner(System.in);                      //键盘输入
            System.out.println("请输入一个数:");
            int value = sc.nextInt();
            MyInteger my = new MyInteger();                         //创建my的对象
            System.out.println("是否是偶数" + my.isEven(value));
            System.out.println("是否是奇数" + my.isOdd(value));
            System.out.println("是否是素数" + my.isPrime(value));
        }
    }

    三、运行结果

  • 相关阅读:
    Qt CheckBox选中与未选中的使用
    Qt Excel表格宽高的设置
    VTK三维重建 使用VTK读取DICOM,并动态输出
    VC++ VTK 读取序列CT图片三维重建
    VTK 读取序列图像
    Qt QWidget提升QVTKWidget
    ITK 介绍
    Qt QMainWindow中利用多个QDockWidget构成标签页tab || tabifyDockWidget
    Qt QDockWidget属性 setFeatures、setAllowedAreas
    Qt Designer中toolBar的allowedAreas属性
  • 原文地址:https://www.cnblogs.com/himurayaiba/p/11559793.html
Copyright © 2020-2023  润新知