a[2]=30; a[3]=40;
a[4]= a[1]+ a[2];
arr1[0][0]=0; arr1[0][1]=1; arr1[0][2]=2; arr1[1][0]=3; arr1[1][1]=4; arr1[1][2]=5; arr1[2][0]=6; arr1[2][1]=7; arr1[2][2]=8; System.out.println(\System.out.println(\System.out.println(\System.out.println(\System.out.println(\
System.out.println(\System.out.println(\System.out.println(\System.out.println(\System.out.println(\System.out.println(\}
}
2.编译并运行程序,写出运行结果。 1)回答问题:
Java语言中的数组的使用要经过哪三个过程?它们是如何实现的? 2).编程实现Fibonacci数列。Fibonacci数列的定义为: F1=1, F2=1, ?
Fn=Fn-1+Fn-2 (n>=3) 提示:关键代码如下: f[0]=f[1]=1;
for(i=2;i<10;i++)
f[i]=f[i-1]+f[i-2];
3.编程采用冒泡法实现对数组元素由小到大排序。
提示:冒泡法排序对相邻的两个元素进行比较,并把小的元素交换到前面。关键代码如下:
for(i=0;i for(j=i+1;j if(intArray[i]>intArray[j]){ t=intArray[i];intArray[i]=intArray[j];intArray[j]=t; } 4.试用数组实现一个10到20的平方表,打印输出这个平方表。 实训六 类与对象 一、实训目的 1.掌握类的定义和使用。 2.掌握对象的声明和使用。 3.掌握构造函数的概念和使用。 4.掌握类极其成员的访问控制符。 二、实训要求 1.编写一个体现面向对象思想的程序。 2.编写一个创建对象和使用对象的方法的程序。 3.编写一个显示当前日期和时间的程序。 4.编写不同成员变量修饰方法的程序。 5.编写不同成员方法修饰方法的程序。 三、实训内容 1.创建对象并使用对象 (1)程序功能:这个Applet 程序要在页面上输出两个矩形,并伴有文字输出,见上图。程序的源代码如下。 import java.awt.*; import java.applet.Applet; public class LX6_1 extends Applet { MyBox b1=new MyBox();//创建对象b1 MyBox b2=new MyBox(170,20,60,60); //创建对象b2 public void paint(Graphics g) { b1.setPosition(20,20); b1.setSize(60,60); b1.draw(g); g.drawString(\矩形 1 的 X 位置: \g.drawString(\矩形 1 的 Y 位置: \b2.draw(g); g.drawString(\矩形 2 的 X 位置: \g.drawString(\矩形 2 的 Y 位置: \} } class MyBox { private int x, y, width, height; MyBox() { x=0; y=0; width=0; height=0; } MyBox(int xPos, int yPos, int w, int h) { x=xPos; y=yPos; width=w; height=h; } public void setPosition (int xPos, int yPos) { x=xPos; y=yPos; } public void setSize (int w, int h) { width=w; height=h; } public int getX() { return x; } public int getY() { return y; } public void draw(Graphics g) { g.drawRect(x, y, width, height); } } (2)编写一个浏览Applet 应用程序的页面文件LX6_1.HTML (3)将LX6_1.java 源程序编译为LX6_1.class 文件 (4)使用浏览器或使用小程序查看器浏览LX6_1.HTML 文件(即在命令提示符下输入:appletviewer LX6_1.HTML),观察运行结果。 (5)思考:程序的结构。类与对象的关系。对象创建、使用、销毁的过程。 2.编写显示当前日期和时间的程序 (1)程序功能:该程序通过使用一个自定义类Time,实现显示当前日期和时间的功能,程序运行结果应与图6.1 类似 (2)LX6_2.java 程序源代码如下。 import java.awt.Graphics; import java.applet.Applet; import java.util.Calendar; class Time { private Calendar t; private int y, m, d, hh, mm, ss; Time (){ t=Calendar.getInstance(); y=t.get(t.YEAR); m=t.get(t.MONTH)+1; d=t.get(t.DATE); hh=t.get(t.HOUR_OF_DAY); mm=t.get(t.MINUTE); ss=t.get(t.SECOND); } public String getDate() { return y+\年\月\日\} public String getTime() { String s=hh+\时\分\秒\return s; } } public class LX3_3 extends Applet { Time t=new Time(); public void paint(Graphics g) { g.drawString(\当前日期:\g.drawString(\当前时间:\} } (2)编写浏览LX6_2类的页面文件LX6_2.html (3)在浏览器中浏览程序运行结果。 注意:本程序中传递了一个Graphics 类的对象g,并调用了g 的方法drawString。 3.使用修饰符 有时需要公开一些变量和方法,有时需要禁止其他对象使用变量和方法,这时可以使用修饰符来实现这个目的。 常用的修饰符如下。 [public] [private] [protected] [package] [static] [final] [transient] [volatile] 不同修饰符的访问控制权限如表6.1 所示。 (1)程序功能:通过两个类StaticDemo、LX6_3说明静态变量、方法与实例变量、方法的区别。 (2)编写类文件LX6_3.java,程序源代码如下。 class StaticDemo { static int x; int y; public static int getX() { return x; } public static void setX(int newX) { x = newX; } public int getY() { return y; } public void setY(int newY) { y = newY; } } public class LX6_3 { public static void main(String[] args) { System.out.println(\静态变量x=\ System.out.println(\实例变量y=\非法,编译时将出错 StaticDemo a= new StaticDemo(); StaticDemo b= new StaticDemo(); a.setX(1); a.setY(2); b.setX(3); b.setY(4); System.out.println(\静态变量a.x=\System.out.println(\实例变量a.y=\System.out.println(\静态变量b.x=\System.out.println(\实例变量b.y=\} } (3)对上面的源程序进行编译,会出现出错提示,请改正错误得到正确的结果。 4.方法中参数传递的练习 在其它语言中,函数调用或过程调用时参数有传值调用和传地址调用之分。在Java 中,