一、题目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()方法计算两点之间的距离
}
}
运行结果