第6次作业--static关键字、对象

题目1:编写一个类Computer,类中含有一个求n的阶乘的方法。将该类打包,并在另一包中的Java文件App.java中引入包,在主类中定义Computer类的对象,调用求n的阶乘的方法(n值由参数决定),并将结果输出。

/**创建一个Computer类,定义了一个成员变量 a ,定义了一个求阶乘的方法 getA 。

    创建一个App类,创建一个Computer对象  */

Computer 类:

package Jyj;

public class Computer {
    int a=1; 
    public int getA(int x) {
        for(int i=1;i<x+1;i++) {
            a=a*i;    
        }
        return a;
    }
}

App 类:

package Xy;

import java.util.Scanner;

import Jyj.Computer;

public class App {
 
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        System.out.println("请输入一个数字");
        Computer b=new Computer();
        Scanner input=new Scanner(System.in);
        int n=input.nextInt();
        System.out.println("阶乘为:"+b.getA(n));
    }

}

运行结果截图:

 

 

 

题目2:

       设计一个MyPoint类,表示一个具有x坐标和y坐标的点,该类包括:

  • 两个私有成员变量x和y表示坐标值;
  • 成员变量x和y的访问器和修改器
  • 无参构造方法创建点(0,0);
  • 一个有参构造方法,根据参数指定坐标创建一个点;
  • distance方法(static修饰)返回参数为MyPoint类型的两个点对象之间的距离。

        编写主类Test,在主类中输入两点坐标,创建两个点对象,利用distance()方法计算这两个点之间的距离。

/** 定义MyPoint 类,定义x.y 两个成员变量,定义了x,y的访问器和修改器。

     定义主类Test,定义两个MyPoint 对象p1,p2。*/

MyPoint 类:


package cn.edu.ccut.po;
public class MyPoint {
    double x;
    double y;
    public double getX() {
     return x;
    }
   
 public double getY() {
  return y;
 }
 public void setY(double y) {
  this.y = y;
 }
 public void setX(double x) {
  this.x = x;
 }
   
 MyPoint(){
  x=0;
  y=0;
 }
 MyPoint(double x,double y){
  this.x=x;
  this.y=y;
 }
 static double distance(MyPoint p1,MyPoint p2) {
  double x1=p1.getX();
  double x2=p2.getX();
  double y1=p1.getY();
  double y2=p2.getY();
  return Math.sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
 }
}

Test 类:

package cn.edu.ccut.po;

public class Test {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        MyPoint p1=new MyPoint(2,3);
        MyPoint p2=new MyPoint(4,8);//创建P1 P2 对象
        double dis=MyPoint.distance(p1, p2);
        System.out.println("两点之间距离为:"+dis);
    }
}

 

运行截图:

 

posted @ 2019-09-19 21:45  季英杰  阅读(187)  评论(0编辑  收藏  举报