一、题目1
编写一个类Computer,类中含有一个求n的阶乘的方法。将该类打包,并在另一包中德Java文件App.java中引入包,在主类中定义Computer类的对象,调用求n的阶乘的方法(n值由参数决定),并将结果输出。
二、源程序
1.Computer.java
/*
1)Computer类中包含一个求阶乘的方法;
2)作用是打包,方便调用;*/
package www; public class Computer { //创建Computer类 public static int jiecheng(int n){ //创建jiecheng方法 int result=1; //求阶乘的运算 for(int i=1;i<=n;i++){ result*=i; } return result; } }
3)运行结果
2.App.java
/*
1)App类中引入www包下的Computer类,创建对象c
2)调用Computer类下的jiecheng方法来求阶乘
*/
package com; import java.util.Scanner; import www.Computer; //引入www包下的Computer类 public class App { public static void main(String[] args) { Scanner reader=new Scanner(System.in); //创建Scanner对象 System.out.println("输入"); Computer c=new Computer(); //创建对象 int a=reader.nextInt(); //从键盘输入 System.out.println(a+"的阶乘为:"+c.jiecheng(a)); //输出:调用成员变量c下方法 } }
3)运行结果
一、题目二
设计一个MyPoint类,表示一个具有x坐标和y坐标的点,该类包括:
- 两个私有成员变量x和y表示坐标值;
- 成员变量x和y的访问器和修改器
- 无参构造方法创建点(0,0);
- 一个有参构造方法,根据参数指定坐标创建一个点;
- distance方法(static修饰)返回参数为MyPoint类型的两个点对象之间的距离。
编写主类Test,在主类中输入两点坐标,创建两个点对象,利用distance()方法计算这两个点之间的距离。
二、源程序
Mypoint.java
/*Mypoint类中包含x,y两个私有成员变量
以及x,y的访问器和修改器
一个有参构造方法 创建一个点
创建方法distance计算两点间距离 */
package com; public class Mypoint { private double x; private double y; //两个私有成员变量x和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(){ //无参构造方法创建点(0,0); x=0; y=0; } Mypoint(double x,double y){ this.x=x; this.y=y; //一个有参构造方法,根据参数指定坐标创建一个点; } static double distance(Mypoint p1,Mypoint p2){ //distance方法,求两点之间距离 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.java
/*输入两点坐标
创建两个对象p1,p2
引入distance方法,求两点坐标距离*/
package com; import java.util.Scanner; //引包 public class Test { public static void main(String[] args) { Scanner reader=new Scanner (System.in); System.out.println("输入第一个点的横纵坐标"); //输入第一个点的横纵坐标 double x1=reader.nextDouble(); double y1=reader.nextDouble(); System.out.println("输入第二个点的横纵坐标"); //输入第二个点的横纵坐标 double x2=reader.nextDouble(); double y2=reader.nextDouble(); Mypoint p1=new Mypoint(x1,y1); //创建p1对象 Mypoint p2=new Mypoint(x2,y2); //创建p2对象 System.out.println("两点之间的距离是"+p1.distance(p1, p2));//调用distance()方法计算两点之间的距离 } }
运行结果