一、题目1:
编写一个类Computer,类中含有一个求n的阶乘的方法。将该类打包,并在另一包中的Java文件App.java中引入包,在主类中定义Computer类的对象,调用求n的阶乘的方法(n值由参数决定),并将结果输出。
Computer.java
1.定义一个Computer类
2.在Computer类定义一个名字为jiecheng的方法来求阶乘
3.利用for循环来求参数n的阶乘,并赋给count,jiecheng方法返回count值
4.将此类打包,包名为aaa
1 package aaa; //将此类打包,包名是aaa 2 3 public class Computer { //定义Computer类 4 public int jiecheng(int n){ //定义参数为n的方法 ,方法名字叫jiecheng 5 int count=1; //定义累乘器count 并赋初值为1 6 for (int i=1;i<=n;i++){ //利用for循环求参数n的阶乘 7 count *=i; 8 } 9 return count; //将阶乘值返回给jiecheng方法 10 } 11 12 }
App.java
1.导入Scanner和aaa的包
2.创建App类,创建主方法,定义一个Computer类的对象c
3.从键盘输入一个值,用n来接收
4.输出阶乘值,调用c对象的jiecheng方法
1 package bbb; // 打包,包名为bbb 2 import java.util.Scanner; //导入Scanner的包 3 import aaa.*; //导入aaa的整个包 4 public class App { //定义一个App类 5 6 7 public static void main(String[] args) { //主方法 8 Computer c=new Computer(); //创建一个新对象,对象所属Computer类 ,对象名为c 9 System.out.println("请输入一个正整数:"); 10 Scanner reader=new Scanner(System.in); //从键盘输入数据来给定n值 11 int n=reader.nextInt(); //定义变量n来接收键盘给定的值 12 System.out.println(n+"的阶乘为:"+c.jiecheng(n));//在输出语句中 调用c对象中的jiecheng方法,将参数n传给jiecheng方法的形参,求n的阶乘 13 } 14 15 }
运行结果:
题目二:
MyPoint.java
1.将此类打包,包名为aaa
2.创建私有double型变量x和y
3.生成x和y的访问器和修改器
4.创建无参构造方法赋初值,创建有参构造方法,根据参数构建一个新点
5.创建Distance方法来求得两个点之间的距离
1 package aaa; //打包 包名为aaa 2 3 public class MyPoint { 4 private double x; //创建私有double型变量x,y 5 private double y; 6 public double getX() { //生成x和y的访问器和修改器 7 return x; 8 } 9 public void setX(double x) { 10 this.x = x; 11 } 12 public double getY() { 13 return y; 14 } 15 public void setY(double y) { 16 this.y = y; 17 } 18 MyPoint (){ //无参构造方法创建点(0,0) 19 double x=0; 20 double y=0; 21 } 22 public MyPoint(double x,double y){ //一个有参构造方法,根据参数指定坐标创建一个点 23 this.x=x; 24 this.y=y; 25 } 26 public static double Distance(MyPoint p1,MyPoint p2){ //创建Distance方法,返回参数为MyPoint类型的两个点对象之间的距离。 27 double x1=p1.getX(); 28 double x2=p2.getX(); 29 double y1=p1.getY(); 30 double y2=p2.getY(); 31 return Math.sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2)); 32 } 33 34 }
Test.java
1.导入aaa包中的MyPoint类
2.创建主方法
3.从控制台输入第一个点和第二个点
4.创建p1 p2对象
5.返回两点之间距离
1 package bbb; 2 import aaa.MyPoint; //导入aaa包中的MyPoint类 3 import java.util.Scanner; 4 public class Test { 5 6 public static void main(String[] args) { //主方法 7 Scanner sc=new Scanner(System.in); 8 System.out.println("请输入第一个点的横纵坐标:"); //控制台提示语句 9 double a=sc.nextDouble(); //a和b接收键盘输入的第一个点的横纵坐标 10 double b=sc.nextDouble(); 11 System.out.println("请输入第二个点的横纵坐标:"); 12 double c=sc.nextDouble(); //c和d接收键盘输入的第二个点的横纵坐标 13 double d=sc.nextDouble(); 14 MyPoint p1=new MyPoint(a,b); //创建p1 p2对象 并指向以a,b为参数的构造方法MyPoint 15 MyPoint p2=new MyPoint(c,d); 16 17 System.out.println("两点之间距离为:"+MyPoint.Distance(p1,p2));//调用MyPoint类中的Distance方法,以p1 p2为参数, 18 } 19 20 }
运行结果