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

一、作业一

编写一个类Computer,类中含有一个求n的阶乘方法。将该类打包,并在另一个包中Java文件中引入包,在主类中定义Computer类的对象,调用求n的阶乘方法,并输出。

二、源程序

1、Computer.java

 

package hom_7_one;//包名

/**
创建一个Computer类
类中包含一个JieCheng求阶乘方法  
方法 定义了三个局部变量  一个for循环  最后返回阶乘值

*/

public class Computer {      //computer类
    public int JieCheng(int n){   //求阶乘方法
        int a=1;
        for(int i=1;i<=n;i++){
            a*=i;}
    return a;
    }
}

2、App.java

package hom_7_another;

import java.util.Scanner;//导入scanner类
import hom_7_one.Computer;//导入computer类

/**
创建一个App类
类中的主方法创建了一个对象,并从键盘输入为对象赋值,调用Computer构造方法,输出结果
*/

public class App {//定义一个类

    public static void main(String[] args) {//主方法
         Scanner reader=new Scanner(System.in);
         System.out.println("请输入数");
         int n=reader.nextInt();                         //随机输入一个数字
         Computer computer=new Computer();//创建一个computer对象
         System.out.println("阶乘为"+computer.JieCheng(n));//求阶乘并输出
          
  
     }
    
}

 

三、运行结果

 

 

一、作业二

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

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

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

二、源程序

1、MyPoint.java

 1 package forget;
 2 
 3 import java.util.Scanner;
 4 
 5 /**
 6   创建一个MyPoint类
 7   MyPoint类中有私有成员变量x,y、x,y的修改器和访问器、无参构造方法、有参构造方法和distance方法
 8   无参构造方法中定义了一个初始点(0,0),有参构造方法中将参数值赋给了成员变量,distance方法中写了求两点之间距离的算式
 9  */
10 
11 public class MyPoint{            //创建MyPoint类
12     private double x;    //定义私有成员变量
13     private double y;
14     
15     
16     public double getX() {        //成员变量x访问器
17         return x;
18     }
19     public void setX(double x) {//成员变量x修改器
20         this.x = x;
21     }
22     public double getY() {        //成员变量y访问器
23         return y;
24     }
25     public void setY(double y) {//成员变量y修改器
26         this.y = y;
27     }
28     MyPoint(){                    //无参构造方法创建点(0,0)
29         x=0;
30         y=0;
31     }
32     MyPoint(double x,double y){//有参构造方法
33         this.x=x;
34         this.y=y;
35     }
36     static double Distance(MyPoint p1,MyPoint p2){//求两点间距离方法
37         return Math.sqrt((p1.getX()-p2.getX())*(p1.getX()-p2.getX())+(p1.getY()-p2.getY())*(p1.getY()-p2.getY()));
38     }
39 }

2、Test.java

 1 package forget;
 2 
 3 import java.util.Scanner;
 4 
 5 /**
 6 创建一个Test类
 7 Test类中的主方法创建了m,n两个对象,并赋初值为两个点坐标,调用distance方法输出结果
 8 */
 9 
10 public class Test {//主类
11 
12     /**
13      * @param args
14      */
15     public static void main(String[] args) {    //主方法
16                 Scanner sc=new Scanner(System.in);//输入语句
17                 System.out.println("请输入第一个点坐标:");
18                 double x1=sc.nextDouble();
19                 double y1=sc.nextDouble();
20                 System.out.println("请输入第二个点坐标:");
21                 double x2=sc.nextDouble();
22                 double y2=sc.nextDouble();
23                 MyPoint m=new MyPoint(x1,y1); //创建m对象
24                 MyPoint n=new MyPoint(x2,y2);
25                 System.out.println("两点间的距离是:"+MyPoint.Distance(m, n));//输出结果
26             
27 
28     }
29 
30 }

三、运行结果

 

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