JAVA第六次作业
题目1:
编写一个类Computer,类中含有一个求n的阶乘的方法。将该类打包,并在另一包中的Java文件App.java中引入包,在主类中定义Computer类的对象,调用求n的阶乘的方法(n值由参数决定),并将结果输出。
1、源代码
1 package Qwe; 2 public class Computer { 3 int s=1; 4 public int jc(int n){ //阶乘的方法 5 for(int i=1;i<=n;i++){ 6 s*=i; 7 } 8 return s; 9 } 10 }
1 package Wasd; 2 import java.util.Scanner; 3 import Qwe.Computer;//导入包Qwe的类Computer 4 public class App { 5 public static void main (String []args){ 6 Computer c= new Computer();//创建对象 7 Scanner reader = new Scanner(System.in); 8 System.out.println("请输入n"); 9 int n =reader.nextInt(); 10 int m = c.jc(n); 11 System.out.println(m); 12 } 13 }
2、运行结果
题目2:
设计一个MyPoint类,表示一个具有x坐标和y坐标的点,该类包括:
-
两个私有成员变量x和y表示坐标值;
-
成员变量x和y的访问器和修改器
-
无参构造方法创建点(0,0);
-
一个有参构造方法,根据参数指定坐标创建一个点;
-
distance方法(static修饰)返回参数为MyPoint类型的两个点对象之间的距离。
编写主类Test,在主类中输入两点坐标,创建两个点对象,利用distance()方法计算这两个点之间的距离。
1 package Qwe; 2 public class MyPoint {//定义类 3 double x; 4 double y;//成员变量 5 public double getX(){//构造器 6 return x; 7 } 8 public void setX(double x){//修改器 9 this.x = x; 10 } 11 public double getY(){ 12 return y; 13 } 14 public void setY(double y){ 15 this.y = y; 16 } 17 public MyPoint(){ 18 x=0; 19 y=0; 20 } 21 public MyPoint(double x,double y){ 22 this.x=x; 23 this.y=y; 24 } 25 public static double distance(MyPoint p1,MyPoint p2){//带参的类方法 26 double x1 = p1.getX(); 27 double x2 = p2.getX();//赋初值 28 double y1 = p1.getY(); 29 double y2 = p2.getY(); 30 return Math.sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));//用函数计算两点间距离 31 } 32 }
1 package Wasd; 2 import java.util.Scanner; 3 import Qwe.MyPoint; //导入Qwe包中的MyPoint类 4 public abstract class Test { //定义主类 5 public static void main(String[] args) { 6 Scanner r =new Scanner(System.in); 7 System.out.println("请输入第一个横坐标的值"); 8 double x1=r.nextDouble(); 9 System.out.println("请输入第一个纵坐标的值"); 10 double y1=r.nextDouble(); 11 System.out.println("请输入第二个横坐标的值"); 12 double x2=r.nextDouble(); 13 System.out.println("请输入第二个纵坐标的值"); 14 double y2=r.nextDouble(); 15 MyPoint m1=new MyPoint(x1,y1); //创建对象 16 MyPoint m2=new MyPoint(x2,y2); 17 18 x1=m1.getX(); //方法引用 19 x2=m2.getX(); 20 y1=m1.getX(); 21 y2=m2.getY(); 22 double distance=m2.distance(m1,m2); 23 System.out.println(distance); 24 } 25 26 }
2、运行结果