题目1:
编写一个类Computer,类中含有一个求n的阶乘的方法。将该类打包,并在另一包中的Java文件App.java中引入包,在主类中定义Computer类的对象,调用求n的阶乘的方法(n值由参数决定),并将结果输出。
Computer.java
package lll;//包名为lll public class Computer {//创建一个Computer的类 long sum=1;//定义一个int型变量sum public long getjiecheng( long n){//创建方法 for(int a=1;a<=n;a++){//for循环语句 sum =sum*a; } return sum;//返回值 } }
App.java
package App;//包名为App import lll.*;//导入lll包 import java.util.Scanner;//引入类 public class App { /** * @param args */ public static void main(String[] args) {//主方法 // TODO Auto-generated method stub Computer b=new Computer();//创建对象b Scanner reader=new Scanner(System.in);//从键盘输入数据 System.out.print("请输入一个整数");//提示键盘输入 long n=reader.nextLong();//读取数据 System.out.print("你输入的数的阶乘为:"+b.getjiecheng(n));//输出结果 } }
结果
题目2:
设计一个MyPoint类,表示一个具有x坐标和y坐标的点,该类包括:
- 两个私有成员变量x和y表示坐标值;
- 成员变量x和y的访问器和修改器
- 无参构造方法创建点(0,0);
- 一个有参构造方法,根据参数指定坐标创建一个点;
- distance方法(static修饰)返回参数为MyPoint类型的两个点对象之间的距离。
编写主类Test,在主类中输入两点坐标,创建两个点对象,利用distance()方法计算这两个点之间的距离。
MyPoint.java
1 public class MyPoint { //创建MyPoint类 2 private double x; //创建两个私有变量x y 3 private double y; 4 public double getX() { 5 return x; 6 } 7 public void setX(double x) { //调用x与y的访问器和修改器 8 this.x = x; 9 } 10 public double getY() { 11 return y; 12 } 13 public void setY(double y) { 14 this.y = y; 15 } 16 MyPoint(){ //用MyPoint方法创建无参点(0,0) 17 x=0; 18 y=0; 19 } 20 MyPoint(double x,double y){ //用MyPoint创建指定的点 21 this.x=x; 22 this.y=y; 23 } 24 static double distance (MyPoint p1,MyPoint p2){ //使用double类型distance方法 25 double x1=p1.getX(); //调用set与get方法 26 double x2=p2.getX(); 27 double y1=p1.getY(); 28 double y2=p1.getY(); 29 return Math.sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2)); //返回两点之间的距离 30 } 31 }
Test.java
1 import java.util.Scanner; //引入Scanner类 2 3 4 public class Test { //创建Test类 5 6 7 public static void main(String[] args) { //主方法 8 MyPoint p1=new MyPoint(); //创建两个对象p1 p2 9 MyPoint p2=new MyPoint(); 10 Scanner in=new Scanner(System.in); //引入Scanner类输入 11 System.out.print("请输入两个点坐标:"); //提示输入 12 double x1=in.nextDouble(); //从键盘键入坐标 13 double y1=in.nextDouble(); 14 double x2=in.nextDouble(); 15 double y2=in.nextDouble(); 16 p1.setX( x1); //调用set方法到两个点形成坐标 17 p2.setX(x2); 18 p1.setY(y1); 19 p2.setY(y2); 20 System.out.print("两点之间距离为:"+MyPoint.distance(p1, p2));//调用distance输出结果 21 22 23 } 24 25 }
结果