☆题目1
编写一个类Computer,类中含有一个求n的阶乘的方法。将该类打包,并在另一包中的Java文件App.java中引入包,在主类中定义Computer类的对象,调用求n的阶乘的方法(n值由参数决定),并将结果输出。
☆代码及注释
☆☆App.java包内
package App.java; /** * 定义一个公有的Computer类 里面包含一个公有的jieCheng方法 将类打包在App.java中 * * @author minky */ public class Computer {// 定义公有类 public int jieCheng(int n) {// 定义一个公有方法,一个参数n,返回值为int类型 int num = 1; for (int i = 1; i <= n; i++) {// 循环求阶乘 num *= i; } return num; } }
☆☆com.java包内
package com.java; import java.util.Scanner; import App.java.*; /** * 这是一个主类,来实现输入一个整数来求他的阶乘 需要导入App.java的包 将它打包在com.java * * @author minky * */ public class Test {// 定义一个public 类 名字是Test public static void main(String[] args) {// 主方法 Scanner scanner = new Scanner(System.in);// 创建Scanner的对象 Computer computer = new Computer();// 创建Scanner的对象 System.out.println("请输入要阶乘的数:"); int n = scanner.nextInt();// 声明一个n,并调用Scanner类中的nextInt方法从键盘上获取一个整型。 System.out.println(n + "的阶乘是:" + computer.jieCheng(n));// 调用Computer类中的jieCheng方法,传入参数n得出n的阶乘 } }
☆代码运行截图
☆题目2
设计一个MyPoint类,表示一个具有x坐标和y坐标的点,该类包括:
两个私有成员变量x和y表示坐标值;
成员变量x和y的访问器和修改器
无参构造方法创建点(0,0);
一个有参构造方法,根据参数指定坐标创建一个点;
distance方法(static修饰)返回参数为MyPoint类型的两个点对象之间的距离。
编写主类Test,在主类中输入两点坐标,创建两个点对象,利用distance()方法计算这两个点之间的距离。
☆代码及注释
☆☆com.point包内
package com.point; import java.util.Scanner; /** * MyPoint类,表示一个具有x坐标和y坐标的点, 一个类方法求两个点的之间的距离 * * @author minky * */ public class MyPoint { private double x;// 私有变量 private double y;// 私有变量 public double getX() {// 访问器 return x; } public void setX(double x) {// 修改器 this.x = x; } public double getY() {// 访问器 return y; } public void setY(double y) {// 修改器 this.y = y; } private void Mypoint() {// 无参构造方法 x = 0.0; y = 0.0; } public MyPoint(double x, double y) {// 有参构造方法 this.x = x; this.y = y; } public static double distance(MyPoint p1, MyPoint p2) {// 公有类方法 // 两个参数均为Mypoint类型,返回值为double return Math.sqrt((p1.x - p2.x) * (p1.x - p2.x) + (p1.y - p2.y) * (p1.y - p2.y)); } } /** * 测试类:输入两个坐标计算两个坐标之间的距离 * @author minky * */ class Testt{ public static void main(String[] args) { double x1,y1,x2,y2; Scanner scanner=new Scanner(System.in); System.out.println("请输入第一个点的横纵坐标:"); x1=scanner.nextDouble(); y1=scanner.nextDouble(); System.out.println("请输入第二个点的横纵坐标:"); x2=scanner.nextDouble(); y2=scanner.nextDouble(); MyPoint p1=new MyPoint(x1, y1);//调用有参构造方法 MyPoint p2=new MyPoint(x2, y2);//调用有参构造方法 System.out.println("两点间的距离为:"+MyPoint.distance(p1, p2));//输出 } }