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