第7次作业--访问权限、对象使用
题目1:在作业5的基础上,再创建一个柱体类,包含矩形对象、高和体积等三个成员变量,一个构造方法进行成员变量初始化,和计算体积、换底两个功能方法,在主类中输入长、宽、高,计算柱体体积,输入新的长、宽、高,创建新的矩形对象,并利用换底方法换底,再次计算柱体体积。
package homework; import java.util.Scanner; class zhuti{ aa s=new aa(); int height,volum; public zhuti(int height,int volum) { this.height=height; this.volum=volum; } public zhuti() { // TODO Auto-generated constructor stub } int getvolum(int area,int height) { return volum=area*height; } public int getarea(int newlength,int newwidth) { int newarea; return newarea=newlength*newwidth; } } public class aa { int length; int width; static int area; int perimeter; double getarea(int x,int y){ area =(x*y); return area; } int getperimeter(int x,int y){ perimeter=2*(x+y); return perimeter; } public static void main(String[] args) { // TODO Auto-generated method stub Scanner reader=new Scanner(System.in); System.out.println("输入矩形长与宽和棱柱高"); int length=reader.nextInt(); int width=reader.nextInt(); int height=reader.nextInt(); zhuti example1=new zhuti(); System.out.println("是否修改底:1是,2否"); int judge=reader.nextInt(); if(judge==1) { System.out.println("重新输入长和宽:"); int newlength=reader.nextInt(); int newwidth=reader.nextInt(); int newwear=example1.getarea(newlength,newwidth); System.out.println("新底面积:"+newwear); int newvolum=newwear*height; System.out.println("新体积"+newvolum); }else { aa example=new aa(); example.getarea(length,width); example.getperimeter(length, width); System.out.println("矩形面积:"+example.area); System.out.println("矩形周长:"+example.perimeter); example1.getvolum(aa.area,height); System.out.println("柱体体积:"+example1.volum); } } }
题目2:设计名为MyInteger的类,它包括: int型数据域value 一个构造方法,当指定int值时,创建MyInteger对象 数据域value的访问器和修改器 isEven( )和isOdd( )方法,如果当前对象是偶数或奇数,返回true 类方法isPrime(MyInteger i),判断指定的值是否为素数,返回true 在主类中创建MyInteger对象,验证MyInteger类中各方法。
package pack; import java.util.Scanner; /** * @author GUFG * @project math * @package pack * @date 2019/9/22 21:41 */ class Myinteger { int value; MyInteger(int k) { value = k; } public int getValue() { return value; } public void setValue(int value) { this.value = value; } boolean isEven() { return value % 2 == 0; } boolean isOdd() { return value % 2 == 1; } static boolean isPrime(MyInteger i) { boolean z = true; for (int j = 2; j < i.value; j++) { if (i.value % j == 0) { z = false; } } return z; } } class HomeWork { public static void main(String[] args) { System.out.println("请输入需要判断的数:"); Scanner in = new Scanner(System.in); int n = in.nextInt(); MyInteger p1 = new MyInteger(n); System.out.println("该数是否是偶数" + p1.isEven()); System.out.println("该数是否是奇数" + p1.isOdd()); System.out.println("该数是否是素数:" + p1.isPrime(p1)); } }