题目一:编写一个类Computer,类中含有一个求n的阶乘的方法。将该类打包,并在另一包中的Java文件App.java中引入包,在主类中定义Computer类的对象,调用求n的阶乘的方法(n值由参数决定),并将结果输出。
源程序:
package b; public class Computer { //创建computer类 public int jiecheng(int n){ //定义一个方法为jiecheng int j=1; for(int i=1;i<=n;i++){ //通过for循环求阶乘 j*=i;} return j; // 返回求出的阶乘 } }
package a; import java.util.*; import b.*; //引入b包 public class Sqx { public static void main(String[] args) { Scanner reader=new Scanner(System.in); System.out.println("请输入数为:"); int n=reader.nextInt(); //输入该数 Computer computer=new Computer(); //定义新的对象 System.out.println("阶乘为:"+computer.jiecheng(n)); //调用方法求出阶乘值并输出 } }
运行结果
题目二:设计一个MyPoint类,表示一个具有x坐标和y坐标的点,该类包括:
1.两个私有成员变量x和y表示坐标值;
2.成员变量x和y的访问器和修改器;
3.无参构造方法创建点(0,0);
4.一个有参构造方法,根据参数指定坐标创建一个点;
5.distance方法(static修饰)返回参数为MyPoint类型的两个对象之间的距离。
编写主类Test,在主类中输入两点坐标,创建两个对象,利用diatance()方法计算这两个点之间的距离。
源程序:
package a; public class MyPoint { // 定义两个变量x,y的坐标值 double x; double y; public double getX() { //成员变量x的访问器和修改器 return x; } public void setX(double x) { this.x = x; } public double getY() { //成员变量y的访问器和修改器 return y; } public void setY(double y) { this.y = y; } MyPoint() { //无参构造方法创建点 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))); } //返回两点之间的距离 }
package a; import java.util.*; public class Text { //主类Test public static void main(String[] args) { //主方法 double x1,x2,y1,y2; //定义变量 Scanner reader=new Scanner(System.in); System.out.println("第一点坐标是:"); //提示输入第一个点的坐标 x1=reader.nextDouble(); //输入x1和y1的值 y1=reader.nextDouble(); System.out.println("第二点坐标是:"); //提示输入第二个点的坐标 x2=reader.nextDouble(); y2=reader.nextDouble(); //输入x2和y2的值 MyPoint p1=new MyPoint(x1,y1); //创建对象p1和p2 MyPoint p2=new MyPoint(x2,y2); System.out.println("两点坐标的距离是:" +MyPoint.distance(p1,p2)); } //使用方法算出两点之家的距离并输出 }
运行结果
Computer类 jiecheng(定义一个求阶乘的方法)
定义j变量通过for求这个数的阶乘
两个类
输入该数
sqx类
创建一个对象compter
通过调用方法输出这个数的阶乘