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

一、作业一

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

二、源程序

1、JuXing.java

package hom_8;

import java.util.Scanner;

/**
  JuXing类定义了私有成员变量a,b、
构造方法和求面积方法 SiLengZhu类中定义了成员变量height,volumn、矩形类对象ju、构造方法、
求体积的getVolumn方法和成员变量修改器
*/ public class JuXing { //矩形 private double a; //定义私有成员变量 private double b; double getArea(){//求矩形面积 return a*b; } JuXing(double a,double b){//构造方法 this.a=a; this.b=b; } } class SiLengZhu{//四棱柱 JuXing ju; double height; double volumn; public void setH(double height) {//修改器 this.height = height; } public double getH() { //访问器 return height; } public JuXing getJu() {//访问器 return ju; } public void setJu(JuXing ju) {//修改器 this.ju = ju; } double getVolumn(){//求体积 return ju.getArea()*height; } SiLengZhu(double height,JuXing ju){ //构造方法 this.height=height; this.ju=ju; } }

2、Test.java

package hom_8;

/**
 Test类中创建一个四棱柱类的对象s,并赋值,输出结果。之后用了s的修改器修改s值再输出。
 */

public class Test{
    public static void main(String[] args) {
        SiLengZhu s=new SiLengZhu(5,new JuXing(2, 5));//创建对象并赋值
        System.out.println("四棱柱的体积是:"+s.getVolumn()); //输出体积
        s.setH(10);                                   //修改对象s的高
        s.setJu(new JuXing(4,7));                    //修改对象s的长和宽
        System.out.println("四棱柱的体积是:"+s.getVolumn());//输出结果
    }
}

三、运行结果

 

 

 

一、作业二

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

二、源程序

1、MyInteger.java

package hom_9;
/**
 * MyInteger类中创建了两个成员变量
 * 类中包含成员变量value,mi的访问器和修改器,判断是否为偶数的isEven()方法,是否为奇数的isOdd()方法,有参的判断素数的isPrime(MyInteger i)方法
 * */
public class MyInteger {
    int value;//定义成员变量
    MyInteger mi;

    // value的访问器和修改器
    public int getValue() {
        return value;
    }

    public void setValue(int value) {
        this.value = value;
    }

    public MyInteger getMi() {
        return mi;
    }

    public void setMi(MyInteger mi) {
        this.mi = mi;
    }

    boolean isEven() {//判断value是否为偶数
        if (value % 2 == 0) {
           
        }
        return true;
    }

    boolean isOdd() {//判断value是否为奇数
        if (value % 2 == 1) {
            
        }
        return true;
    }

    boolean isPrime(MyInteger i) {//有参构造方法判断value是否为素数
        for (int j = 2; j < i.value; j++) {
            if (i.value % j == 0) {
                return false;
            }
        }
        return true;
    }
}

2、Test.java

package hom_9;

import java.util.Scanner;

/**
 * 主类Test.java中创建了一个mi对象,从键盘输入数字为对象赋值。分别调用了MyInteger中的方法并输出
 * */
public class Test {
    public static void main(String[] args) {
        MyInteger mi = new MyInteger();// 创建mi对象
        System.out.println("输入一个整数,如果是奇数或偶数返回true,是素数返回true,其他返回false");
        Scanner sc = new Scanner(System.in);
        mi.value = sc.nextInt();
        System.out.println(mi.isEven());// 调用MyInteger类中的isEven()方法并输出
        System.out.println(mi.isOdd());// //调用MyInteger类中的isOdd()方法并输出
        System.out.println(mi.isPrime(mi));// //调用MyInteger类中的isPrime()方法并输出
    }

}

三、运行结果

 

posted @ 2019-09-22 16:22  20194628胡艳春  阅读(209)  评论(0编辑  收藏  举报