一、作业一
编写一个类Computer,类中含有一个求n的阶乘方法。将该类打包,并在另一个包中Java文件中引入包,在主类中定义Computer类的对象,调用求n的阶乘方法,并输出。
二、源程序
1、Computer.java
package hom_7_one;//包名 /** 创建一个Computer类 类中包含一个JieCheng求阶乘方法 方法 定义了三个局部变量 一个for循环 最后返回阶乘值 */ public class Computer { //computer类 public int JieCheng(int n){ //求阶乘方法 int a=1; for(int i=1;i<=n;i++){ a*=i;} return a; } }
2、App.java
package hom_7_another; import java.util.Scanner;//导入scanner类 import hom_7_one.Computer;//导入computer类 /** 创建一个App类 类中的主方法创建了一个对象,并从键盘输入为对象赋值,调用Computer构造方法,输出结果 */ public class App {//定义一个类 public static void main(String[] args) {//主方法 Scanner reader=new Scanner(System.in); System.out.println("请输入数"); int n=reader.nextInt(); //随机输入一个数字 Computer computer=new Computer();//创建一个computer对象 System.out.println("阶乘为"+computer.JieCheng(n));//求阶乘并输出 } }
三、运行结果
一、作业二
设计一个MyPoint类,表示一个具有x坐标和y坐标的点,该类包括:
- 两个私有成员变量x和y表示坐标值;
- 成员变量x和y的访问器和修改器
- 无参构造方法创建点(0,0);
- 一个有参构造方法,根据参数指定坐标创建一个点;
- distance方法(static修饰)返回参数为MyPoint类型的两个点对象之间的距离。
编写主类Test,在主类中输入两点坐标,创建两个点对象,利用distance()方法计算这两个点之间的距离。
二、源程序
1、MyPoint.java
1 package forget; 2 3 import java.util.Scanner; 4 5 /** 6 创建一个MyPoint类 7 MyPoint类中有私有成员变量x,y、x,y的修改器和访问器、无参构造方法、有参构造方法和distance方法 8 无参构造方法中定义了一个初始点(0,0),有参构造方法中将参数值赋给了成员变量,distance方法中写了求两点之间距离的算式 9 */ 10 11 public class MyPoint{ //创建MyPoint类 12 private double x; //定义私有成员变量 13 private double y; 14 15 16 public double getX() { //成员变量x访问器 17 return x; 18 } 19 public void setX(double x) {//成员变量x修改器 20 this.x = x; 21 } 22 public double getY() { //成员变量y访问器 23 return y; 24 } 25 public void setY(double y) {//成员变量y修改器 26 this.y = y; 27 } 28 MyPoint(){ //无参构造方法创建点(0,0) 29 x=0; 30 y=0; 31 } 32 MyPoint(double x,double y){//有参构造方法 33 this.x=x; 34 this.y=y; 35 } 36 static double Distance(MyPoint p1,MyPoint p2){//求两点间距离方法 37 return Math.sqrt((p1.getX()-p2.getX())*(p1.getX()-p2.getX())+(p1.getY()-p2.getY())*(p1.getY()-p2.getY())); 38 } 39 }
2、Test.java
1 package forget; 2 3 import java.util.Scanner; 4 5 /** 6 创建一个Test类 7 Test类中的主方法创建了m,n两个对象,并赋初值为两个点坐标,调用distance方法输出结果 8 */ 9 10 public class Test {//主类 11 12 /** 13 * @param args 14 */ 15 public static void main(String[] args) { //主方法 16 Scanner sc=new Scanner(System.in);//输入语句 17 System.out.println("请输入第一个点坐标:"); 18 double x1=sc.nextDouble(); 19 double y1=sc.nextDouble(); 20 System.out.println("请输入第二个点坐标:"); 21 double x2=sc.nextDouble(); 22 double y2=sc.nextDouble(); 23 MyPoint m=new MyPoint(x1,y1); //创建m对象 24 MyPoint n=new MyPoint(x2,y2); 25 System.out.println("两点间的距离是:"+MyPoint.Distance(m, n));//输出结果 26 27 28 } 29 30 }
三、运行结果