12. public static void main(String args[]){ 13. String str1=\14. String str2=\
15. String str3=\16. String str4=new String(\
17. StringBuffer str5=new StringBuffer(\
18. System.out.println(str1= =str2); 19. System.out.println(str2= =str3); 20. System.out.println(str2= =str4); 21. System.out.println(str4= =str5); 22. System.out.println(str3.equals(str4)); 23. System.out.println(str4.equals(str5)); 24. System.out.println (stringReplace (str1)); 25. System.out.println(bufferReplace (str5)); 26. System.out.println (str1); 27. System.out.println(str5); 28. } 29. }
19、阅读下面的程序,修改程序中错误的地方:
23) public class Test implements Runnable { 24) String str[]=new String[10];
25) for (int i = 0; i < str.length(); i++) { 26) str[i]=i+”-”; 27) }
28) public void run() { 29) try {
30) for (int i = 0; i < str.length(); i++) { 31) sleep(1000);
32) System.out.print(str[i]); 33) }
34) } catch (InterruptedException e) { 35) e.printStackTrace(); 36) } 37) }
38) public static void main(String args[]) { 39) Test t = new Test(); 40) t.run(); 41) } 42) }
20、阅读下面的Applet程序AppletDemo.java: import java.applet.Applet; import java.awt.Graphics;
第 25 页 共 48 页
public class AppletDemo extends Applet { StringBuffer buffer; public void init() {
buffer = new StringBuffer(); addItem(\初始化?\ }
public void start() {
addItem(\启动... \ }
public void stop() {
addItem(\停止运行... \ }
public void destroy() { addItem(\准备卸载...\ }
void addItem(String newWord) { System.out.println(newWord); buffer.append(newWord); repaint(); }
public void paint(Graphics g) {
g.drawString(buffer.toString(), 5, 15); } }
编译AppletDemo.java后,将AppletDemo.class嵌入HTML文件中,然后用AppletViewer命令打开该HTML文件,问:
(1)小应用程序在加载阶段,在屏幕上打印结果是什么? (2)关闭这个小应用程序时,在屏幕上打印结果是什么?
21、阅读下面的程序:
1) abstract class Base{
2) abstract public void myfunc(); 3) public void another(){
4) System.out.println(\5) } 6) }
7) public class Abs extends Base{
8) public static void main(String argv[]){ 9) Base b = new Abs(); 10) b.another(); 11) }
12) public void myfunc(){
13) System.out.println(\14) }
第 26 页 共 48 页
15) public void another(){ 16) myfunc(); 17) } 18) }
以上程序经编译后,运行结果是什么?
22、阅读下面程序代码,写出程序运行的输出结果。
1) class TestException{ 2) public static void main(String []args){ 3) try{ 4) callMethod(); 5) }catch(Exception e){ 6) System.out.print('a'); 7) } 8) System.out.println('b'); 9) } 10) static void createException(){ 11) throw new ArrayIndexOutOfBoundsException(); 12) } 13) static void callMethod(){ 14) try{ 15) createException(); 16) System.out.print('c'); 17) }catch(ArrayIndexOutOfBoundsException e){ 18) System.out.print('d'); 19) } 20) finally{ 21) System.out.print('e'); 22) } 23) System.out.print('f'); 24) } 25) }
23、阅读下面的程序:
1) class Super{
2) public int i=0; 3) public Super(){ 4) i=1; 5) } 6) }
7) public class Sub extends Super{ 8) public Sub(){ 9) i=2; 10) }
第 27 页 共 48 页
11) public static void main(String args[]){ 12) Sub s=new Sub();
13) System.out.println(s.i); 14) } 15) }
上面的程序经编译后,运行结果是什么?
24、阅读下面的程序,程序保存为Test.java:
1) public class Test {
2) public static void main(String[ ] args) { 3) int index=0;
4) while (index<=100) { 5) index+=10; 6) if (index==40) 7) break;
8) System.out.println(\9) } 10) } 11) }
上面的程序经编译,运行后输出的结果是什么?
25、阅读下面的程序:
1) class ValHold{
2) public int i = 10; 3) }
4) public class ObParm{
5) public static void main(String argv[]){ 6) ObParm o = new ObParm(); 7) o.amethod(); 8) }
9) public void amethod(){ 10) int i = 99;
11) ValHold v = new ValHold(); 12) v.i = 30; 13) another(v,i);
14) System.out.print(v.i); 15) }
16) public void another(ValHold v, int i){ 17) i = 0; 18) v.i = 20;
19) ValHold vh = new ValHold(); 20) v = vh;
21) System.out.print(v.i); 22) System.out.print(i);
第 28 页 共 48 页