实验2_Java类的创建和使用
2012-03-15 12:58
162 查看
这次共四题:创建和使用J***A类,并进行Applet可视化编程练习。
上题结果截图:
// Ex2_1.java /** * 题目要求: * 编写程序,找出100~700间能同时被3、7、11整除的数 * 源程序保存为Ex2_1.java。 **/ public class Ex2_1 { public static void main(String[] args) { System.out.println("下面是在100~700间能同时被3、7、11整除的数:\n"); int number; for (number = 100; number <= 700; ++number) { if( (0 == number % 3) && (0 == number % 7) && (0 == number % 11)) { System.out.println(+ number + "\n"); } } } } /** * 运行结果: * 下面是在100~700间能同时被3、7、11整除的数: * * 231 * * 462 * * 693 * **/
// Ex2_2.java /** * 题目要求: * 求1!+2!+...20!的和并输出,同时要求把1!、2!、3!...的结果存放到一个数组中,并输出数组的各元素。 * 源程序保存为Ex2_2.java。 **/ public class Ex2_2 { public static void main(String[] args) { long save[] = new long[20]; long sum = 0; for (int i = 0; i != 20; ++i) { save[i] = i + 1; long result = 1; for (long calculate = i + 1; calculate > 0; --calculate) { result *= calculate; } save[i] = result; System.out.println(+ (i + 1) + "阶乘的结果是:" + save[i] + "\n"); sum += save[i]; } System.out.println("1!+2!+...20!的和是:" + sum + "\n"); } } // 下面是运行结果: // 1阶乘的结果是:1 // // 2阶乘的结果是:2 // // 3阶乘的结果是:6 // // 4阶乘的结果是:24 // // 5阶乘的结果是:120 // // 6阶乘的结果是:720 // // 7阶乘的结果是:5040 // // 8阶乘的结果是:40320 // // 9阶乘的结果是:362880 // // 10阶乘的结果是:3628800 // // 11阶乘的结果是:39916800 // // 12阶乘的结果是:479001600 // // 13阶乘的结果是:6227020800 // // 14阶乘的结果是:87178291200 // // 15阶乘的结果是:1307674368000 // // 16阶乘的结果是:20922789888000 // // 17阶乘的结果是:355687428096000 // // 18阶乘的结果是:6402373705728000 // // 19阶乘的结果是:121645100408832000 // // 20阶乘的结果是:2432902008176640000 // // 1!+2!+...20!的和是:2561327494111820313
// Ex2_3.java /** * 题目要求: * 运行书本P59页例4.1,并修改程序实现两个数的相乘, * 修改源程序保存为Ex2_3.java。 */ import java.awt.*; import java.awt.event.*; import java.applet.Applet; public class Ex2_3 extends Applet implements ActionListener{ Label label1 = new Label("*"); Label label2 = new Label("="); TextField field1 = new TextField(6); TextField field2 = new TextField(6); TextField field3 = new TextField(6); Button button1 = new Button("相乘"); public void init(){ add(field1); add(label1); add(field2); add(label2); add(field3); add(button1); button1.addActionListener(this); } public void actionPerformed(ActionEvent e){ int x = Integer.parseInt(field1.getText()) * Integer.parseInt(field2.getText()); field3.setText(Integer.toString(x)); } }
<HTML> <applet code = "Ex2_3.class" height = 200 width = 400> </applet> </HTML>
上题结果截图:
// Ex2_4.java /** * 题目要求: * 1)创建一个描述平面坐标系中的点及其操作的类Point,添加两个double类型的属性x,y,描述点在坐标系中的位置。 * 2)在Point中添加方法: * 初始化x和y的构造函数; * 返回x和y值的getX( )和getY( ); * 将点平移w(水平)和h(垂直)的方法shiftPoint (double w, double h); * 确定点在第几象限的方法whatQuadrant( ),并返回结果; * 3)编写程序测试类Point,使用上面定义的各个方法,并将其结果输出,源程序保存为Ex2_4.java。 **/ class Point { double x; double y; // construction Point (double tempX, double tempY) { x = tempX; y = tempY; System.out.println("初始化该Point类 x = " + x + " ,y = " +y); } // get value public double getX() { return x; } public double getY() { return y; } // 将点平移w(水平)和h(垂直)的方法shiftPoint (double w, double h); public void shiftPoint(double w, double h) { x += w; y += h; return; } // 确定点在第几象限的方法whatQuadrant( ),并返回结果; public int whatQuadrant() { if (0.0 == x && 0.0 == y) { return 0; } else if (x > 0.0 && y > 0.0) { return 1; } else if (x < 0.0 && y > 0.0) { return 2; } else if (x < 0.0 && y < 0.0) { return 3; } else if (x > 0.0 && y < 0.0) { return 4; } else if (y == 0.0) // 坐标位于X轴上 { return 5; } else if( x == 0.0) // 坐标位于Y轴上 { return 6; } else { return 7; } } public static void testAllFunction(Point test, double x, double y) { System.out.println("使用get()函数得: x = " + test.getX() + ", y = " + test.getY() ); switch(test.whatQuadrant()) { case 0: { System.out.println("使用whatQuadrant()函数知该Point位于坐标原点" ); break; } case 1: { System.out.println("使用whatQuadrant()函数知该Point位于第1象限" ); break; } case 2: { System.out.println("使用whatQuadrant()函数知该Point位于第2象限" ); break; } case 3: { System.out.println("使用whatQuadrant()函数知该Point位于第3象限" ); break; } case 4: { System.out.println("使用whatQuadrant()函数知该Point位于第4象限" ); break; } case 5: { System.out.println("使用whatQuadrant()函数知该Point位于 x 轴" ); break; } case 6: { System.out.println("使用whatQuadrant()函数知该Point位于 y 轴" ); break; } } test.shiftPoint(x, y); System.out.println("使用shiftPoint()函数移动后的 x = " + test.getX() + ", y = " + test.getY() + "\n"); } public static void main(String args[]) { System.out.println("测试在Point的main中调用运行成功,下面开始关于Point类的方法测试\n"); Point zero = new Point(0, 0); testAllFunction(zero, 6, 8); Point one = new Point(6, 8); testAllFunction(one, 6, 8); Point two = new Point(-7, 6); testAllFunction(two, 6, 8); Point three = new Point(-6, -8); testAllFunction(three, 6, 8); Point four = new Point(6, -8); testAllFunction(four, 6, 8); } } public class Ex2_4 { public static void main(String args[]) { Point.main(args); } } // 下面是运算结果: // 测试在Point的main中调用运行成功,下面开始关于Point类的方法测试 // // 初始化该Point类 x = 0.0 ,y = 0.0 // 使用get()函数得: x = 0.0, y = 0.0 // 使用whatQuadrant()函数知该Point位于坐标原点 // 使用shiftPoint()函数移动后的 x = 6.0, y = 8.0 // // 初始化该Point类 x = 6.0 ,y = 8.0 // 使用get()函数得: x = 6.0, y = 8.0 // 使用whatQuadrant()函数知该Point位于第1象限 // 使用shiftPoint()函数移动后的 x = 12.0, y = 16.0 // // 初始化该Point类 x = -7.0 ,y = 6.0 // 使用get()函数得: x = -7.0, y = 6.0 // 使用whatQuadrant()函数知该Point位于第2象限 // 使用shiftPoint()函数移动后的 x = -1.0, y = 14.0 // // 初始化该Point类 x = -6.0 ,y = -8.0 // 使用get()函数得: x = -6.0, y = -8.0 // 使用whatQuadrant()函数知该Point位于第3象限 // 使用shiftPoint()函数移动后的 x = 0.0, y = 0.0 // // 初始化该Point类 x = 6.0 ,y = -8.0 // 使用get()函数得: x = 6.0, y = -8.0 // 使用whatQuadrant()函数知该Point位于第4象限 // 使用shiftPoint()函数移动后的 x = 12.0, y = 0.0
相关文章推荐
- 使用java创建一个简易的视屏播放器
- Linux下JNI的使用--jni创建Java对象
- Maven(二)——eclipse使用Maven创建(Java和Android)项目
- Maven 使用 webapp archetype 创建Web 应用后无法找到 java 和 test 文件夹
- JAVA实验一程序控制语句和JAVA编译器的使用
- JAX-WS(一)之使用wsgen从Java创建简单的WebService
- maven 学习---使用Maven创建Java项目
- 如何使用Java、Servlet创建二维码
- 最近在做实验希望实现基于JNI技术在Java中使用 Slex.dll
- 博为峰Java技术文章 ——JavaSE Swing使用ListModel方式创建列表框II
- 使用Java代码来创建view
- 使用gradle创建java程序
- 如何使用Java、Servlet创建二维码
- Java使用POI操作Excel并创建下拉框
- Java通过反射机制使用非默认构造器创建对象
- 老鼠Atlas之旅(九):Hands-On Lab 5第五个实验,使用数据绑定和模板创建个Atlas应用程序
- Maven学习笔记(三)—— 使用Maven自带的功能创建Java和JavaWeb项目
- JAVA 线程池的创建 以及异步线程池的使用
- 关于使用动态代理创建代理对象是报错 java.lang.ClassCastException: $Proxy0 cannot be cast to 的解决办法
- Java:使用JDOM创建XML文档