题目一:
编写一个类Computer,类中含有一个求n的阶乘的方法。将该类打包,并在另一包中德Java文件App.java中引入包,在主类中定义Computer类的对象,调用求n的阶乘的方法(n值由参数决定),并将结果输出。
代码
1.App.java
1 /** 2 * 主类App,包含一个主方法; 3 * 主方法的功能:创建对象,接受输入,调用Computer类中的方法计算阶乘并输出; 4 */ 5 6 package b; 7 import a.*; 8 import java.util.Scanner; 9 10 public class App { 11 public static void main(String[] args){ 12 int n; 13 Computer c = new Computer(); //创建对象c; 14 System.out.print("想求几的阶乘:"); 15 Scanner reader = new Scanner(System.in); 16 n = reader.nextInt(); 17 System.out.println(""+n+"阶乘是:"+c.Jc(n)); // 调用方法并输出 18 } 19 }
2.Computer.java
1 /** 2 * 定义了一个Computer类,包含一个方法Jc; 3 * Jc的功能是计算n的阶乘; 4 */ 5 6 package a; 7 8 public class Computer { 9 10 public double Jc(int n){ //求n阶的乘的方法 11 int i; 12 double num=1;//存储每次乘之后的值 13 for(i=1;i<=n;i++){ 14 num *=i; 15 } 16 return num; 17 } 18 }
运行结果
题目二:
设计一个MyPoint类,表示一个具有x坐标和y坐标的点,该类包括:
- 两个私有成员变量x和y表示坐标值;
- 成员变量x和y的访问器和修改器
- 无参构造方法创建点(0,0);
- 一个有参构造方法,根据参数指定坐标创建一个点;
- distance方法(static修饰)返回参数为MyPoint类型的两个点对象之间的距离。
编写主类Test,在主类中输入两点坐标,创建两个点对象,利用distance()方法计算这两个点之间的距离。
代码:
1.Test.java
1 /** 2 * 主类Test,包含一个主方法; 3 * 主方法功能:接受两个点坐标的输入,创建两个点的对象,调用distance方法计算输出两个点之间的距离 4 */ 5 6 package Point; 7 import java.util.Scanner; 8 9 public class Test { 10 public static void main(String[] args) { 11 double x1,y1,x2,y2; //x1,x2,y1,y2代表两个点的坐标; 12 System.out.print("请输入第一个点坐标:"); 13 Scanner reader = new Scanner(System.in); 14 x1 = reader.nextDouble(); 15 y1 = reader.nextDouble(); 16 System.out.print("请输入第二个点坐标:"); 17 x2 = reader.nextDouble(); 18 y2 = reader.nextDouble(); 19 Mypoint q1 = new Mypoint(x1, y1); //创建对象; 20 Mypoint q2 = new Mypoint(x2, y2); //创建对象; 21 System.out.print("两点间距离是"+Mypoint.distance(q1, q2)); 22 } 23 24 }
2.Mypoint.java
1 /** 2 * 类中包含两个成员变量 x,y,三个方法分别是无参构造方法,有参构造方法,distance方法; 3 * 成员变量x,y分别表示一个点的横坐标和纵坐标; 4 * 无参构造方法创建原点(0,0),有参构造方法是根据参数指定的坐标创建点,distance方法的功能是计算主类中输入两个点之间的距离 5 */ 6 7 package Point; 8 9 public class Mypoint { 10 private double x; 11 private double y; 12 13 public double getX(){ //访问器 14 return x; 15 } 16 public void setX(int x){ //修改器 17 this.x = x; 18 } 19 public double getY(){ 20 return y; 21 } 22 public void setY(int y){ 23 this.y = y; 24 } 25 Mypoint(){ //无参构造方法 26 x = 0; 27 y = 0; 28 } 29 Mypoint(double x2, double y2){ //有参构造方法 30 this.x = x2; 31 this.y = y2; 32 } 33 static double distance(Mypoint p1, Mypoint p2){ //计算两个点之间的距离 34 double x1 = p1.getX(); 35 double x2 = p2.getX(); 36 double y1 = p1.getX(); 37 double y2 = p2.getX(); 38 return Math.sqrt((x1 - x2) * (x1 - x2) + (y1 - y2) * (y1 - y2)); 39 } 40 }
运行结果: