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

一、题目1:

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

Computer.java


 

1.定义一个Computer类

2.在Computer类定义一个名字为jiecheng的方法来求阶乘

3.利用for循环来求参数n的阶乘,并赋给count,jiecheng方法返回count值

4.将此类打包,包名为aaa

 1 package aaa;                    //将此类打包,包名是aaa
 2 
 3 public class Computer {         //定义Computer类 
 4     public int jiecheng(int n){ //定义参数为n的方法 ,方法名字叫jiecheng 
 5         int count=1;            //定义累乘器count 并赋初值为1
 6         for (int i=1;i<=n;i++){ //利用for循环求参数n的阶乘
 7             count *=i;
 8         }
 9         return count;           //将阶乘值返回给jiecheng方法
10     }
11 
12 }

App.java


 

1.导入Scanner和aaa的包

2.创建App类,创建主方法,定义一个Computer类的对象c

3.从键盘输入一个值,用n来接收

4.输出阶乘值,调用c对象的jiecheng方法

 1 package bbb;                        // 打包,包名为bbb
 2 import java.util.Scanner;           //导入Scanner的包                                        
 3 import aaa.*;                       //导入aaa的整个包
 4 public class App {                  //定义一个App类
 5 
 6     
 7     public static void main(String[] args) {      //主方法
 8         Computer c=new Computer();                //创建一个新对象,对象所属Computer类 ,对象名为c
 9         System.out.println("请输入一个正整数:");
10         Scanner reader=new Scanner(System.in);   //从键盘输入数据来给定n值
11         int n=reader.nextInt();                   //定义变量n来接收键盘给定的值
12         System.out.println(n+"的阶乘为:"+c.jiecheng(n));//在输出语句中 调用c对象中的jiecheng方法,将参数n传给jiecheng方法的形参,求n的阶乘
13     }
14 
15 }

运行结果:


 

 

 

 题目二:

MyPoint.java


 

1.将此类打包,包名为aaa

2.创建私有double型变量x和y

3.生成x和y的访问器和修改器

4.创建无参构造方法赋初值,创建有参构造方法,根据参数构建一个新点

5.创建Distance方法来求得两个点之间的距离

 1 package aaa;                    //打包 包名为aaa
 2 
 3 public class MyPoint {
 4     private double x;           //创建私有double型变量x,y
 5     private double y;
 6     public double getX() {      //生成x和y的访问器和修改器
 7         return x;
 8     }
 9     public void setX(double x) {
10         this.x = x;
11     }
12     public double getY() {
13         return y;
14     }
15     public void setY(double y) {
16         this.y = y;
17     }
18     MyPoint (){               //无参构造方法创建点(0,0)
19         double x=0;
20         double y=0;
21     }
22     public MyPoint(double x,double y){    //一个有参构造方法,根据参数指定坐标创建一个点
23         this.x=x;
24         this.y=y;
25     }
26     public static double Distance(MyPoint p1,MyPoint p2){   //创建Distance方法,返回参数为MyPoint类型的两个点对象之间的距离。
27         double x1=p1.getX();
28         double x2=p2.getX();
29         double y1=p1.getY();
30         double y2=p2.getY();
31         return Math.sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
32     }
33     
34 }

Test.java


 

1.导入aaa包中的MyPoint类

2.创建主方法

3.从控制台输入第一个点和第二个点

4.创建p1 p2对象

5.返回两点之间距离

 1 package bbb;
 2 import aaa.MyPoint;  //导入aaa包中的MyPoint类
 3 import java.util.Scanner;  
 4 public class Test {
 5 
 6     public static void main(String[] args) {    //主方法
 7         Scanner sc=new Scanner(System.in);
 8         System.out.println("请输入第一个点的横纵坐标:");   //控制台提示语句
 9         double a=sc.nextDouble();     //a和b接收键盘输入的第一个点的横纵坐标
10         double b=sc.nextDouble();
11         System.out.println("请输入第二个点的横纵坐标:");
12         double c=sc.nextDouble();     //c和d接收键盘输入的第二个点的横纵坐标
13         double d=sc.nextDouble();
14         MyPoint p1=new MyPoint(a,b);  //创建p1 p2对象 并指向以a,b为参数的构造方法MyPoint
15         MyPoint p2=new MyPoint(c,d);
16 
17         System.out.println("两点之间距离为:"+MyPoint.Distance(p1,p2));//调用MyPoint类中的Distance方法,以p1 p2为参数,
18     }
19 
20 }

运行结果


 

 

转载于:https://www.cnblogs.com/cooldbm/p/11565023.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值