java2实用教程试题.docx

上传人:b****6 文档编号:15412486 上传时间:2023-07-04 格式:DOCX 页数:22 大小:26.08KB
下载 相关 举报
java2实用教程试题.docx_第1页
第1页 / 共22页
java2实用教程试题.docx_第2页
第2页 / 共22页
java2实用教程试题.docx_第3页
第3页 / 共22页
java2实用教程试题.docx_第4页
第4页 / 共22页
java2实用教程试题.docx_第5页
第5页 / 共22页
java2实用教程试题.docx_第6页
第6页 / 共22页
java2实用教程试题.docx_第7页
第7页 / 共22页
java2实用教程试题.docx_第8页
第8页 / 共22页
java2实用教程试题.docx_第9页
第9页 / 共22页
java2实用教程试题.docx_第10页
第10页 / 共22页
java2实用教程试题.docx_第11页
第11页 / 共22页
java2实用教程试题.docx_第12页
第12页 / 共22页
java2实用教程试题.docx_第13页
第13页 / 共22页
java2实用教程试题.docx_第14页
第14页 / 共22页
java2实用教程试题.docx_第15页
第15页 / 共22页
java2实用教程试题.docx_第16页
第16页 / 共22页
java2实用教程试题.docx_第17页
第17页 / 共22页
java2实用教程试题.docx_第18页
第18页 / 共22页
java2实用教程试题.docx_第19页
第19页 / 共22页
java2实用教程试题.docx_第20页
第20页 / 共22页
亲,该文档总共22页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

java2实用教程试题.docx

《java2实用教程试题.docx》由会员分享,可在线阅读,更多相关《java2实用教程试题.docx(22页珍藏版)》请在冰点文库上搜索。

java2实用教程试题.docx

java2实用教程试题

第1章Java语言入门

1-1开发与运行Java程序需要经过哪些主要步骤和过程?

1-2怎样区分应用程序和小应用程序?

应用程序的主类或小应用程序的主类必须用public修饰吗?

1-3Java程序是有什么组成的?

一个程序中必须要有public类吗?

Java源文件的命名规则是怎样的?

1-4在运行小应用程序的html文件中可以使用codebase属性制定小应用程序的字节码所驻留的目录。

如果不使用codebase属性,小应用程序的字节码文件必须和运行它的html在同一目录中,编写一个小应用程序并将它的字节码存放在某个目录中,比如c:

\Boy.把运行该小应用程序的html文件(注意其中的codebase属性):

codebase=c:

\boy>

存放在另一个目录中(查阅有关编写网页方面的书籍,会有更详细的关于怎样在一个网页中嵌入一个小应用程序的讲解)。

第2章标识符、关键字和数据类型

2-1上机运行下列程序,注意观察输出的结果。

publicclassE

{publicstaticvoidmain(stringargs[])

{for(inti=20302;i<=20302;i++)

{System.out.println((char)i);

}

}

2-2System.out.println(“你好”);可输出字符串值,也可以使用System.out.println()输出变量或表达式的值,只需使用并置符号:

“+”将变量、表达式或一个常数值与一个字符串并置即可,如System.out.println(“”+x);System.out.println(“:

”+123+“大于”+122)等。

上机调试下列程序,注意观察结果,特别注意System.out.print()和System.out.println()的区别。

publicclassOutputData

{publicstaticvoidmain(stringargs[])

{intx=234,y=432;

System.out.println(“:

”+x+“<”+2*x);

System.out.print(“我输出结果后不回车“);

System.out.println(“我输出结果后自动回车到下一行”);

}

}

第3章运算符、表达式和语句

3-1分别编写一个应用程序和小应用程序求1!

+2!

+…+20!

3-2编写一个小应用程序求100以内的全部素数。

3-3分别用do-while和for循环计算1+1/2!

+1/3!

+1/4!

…的前20项和。

3-4一个数如果恰好等于它的因子之和,这个数就称为“完数”。

分别编写一个应用程序和小应用程序求1000之内的所有完数。

第4章类、对象和接口

4-1举例说明protected方法和友好方法的区别。

4-2举例说明类方法和实例方法以及类变量和实例变量的区别。

4-3子类将继承父类的那些成员变量和方法?

子类在什么情况下隐藏父类的成员变量和方法?

在子类中是否允许有一个方法和父类的方法名字相同,而类型不同?

说明你的理由。

4-4下列程序有什么错误?

publicclassTakecare

{inta=90;

staticfloatb=10.98f

publicstaticvoidmain(stringargs[])

{floatc=a+b;

System.out.println(“=”+c);

}

}

4-5使用接口有哪些注意事项?

模仿例子4.28,编写一个类实现两个接口的程序。

4-6上机编译运行下列程序。

class学生

{string书,笔;int学号,年级;

学生(intnumber,intgrade)

{学号=number;年级=grade;

}

void去教室()

{System.out.println(“我带着”+书+“和”+笔+“来到教室,准备听课”);

}

}

第5章数组与字符串

5-1使用String类的publicStringtoUpperCase()方法可以将一个字符串中的小写字母变成大写字母;使用publicStringtoLowerCase()方法可以将一个字符串中的大写字母变成小写字母。

编写一个程序,使用这个两个方法实现大小写的转换。

5-2使用String类的publicStringconcat(Stringstr)方法可以把调用该方法的字符串与参数制定的字符串连接,把str指定的串连接到当前串的尾部获得一个新的串。

编写一个程序通过连接两个串得到一个新串,并输出这个新串。

5-3String类的publiccharcharAt(intindex)方法可以得到当前字符串index位置上的一个字符。

说出下列程序的输出结果。

classE4

{publicstaticvoidmain(Stringargs[])

{Strings=“中国科学技术大学”;

chara=s.charAt

(2),b=s.charAt(6);

System.out.print(a);

System.out.println(b);

}

}

5-4使用java.util包中的Arrays类的静态方法:

publicstaticvoidsort(doublea[])可以把参数a指定的double型数组按升序排序。

使用使用java.util包中的Arrays类的静态方法:

publicstaticvoidsort(doublea[],intstart,intend)可以把参数a指定的double型数组中从位置start到end位置的数按升序排序。

说出下列程序的输出结果。

importjava.util.*;

classE5

{publicstaticvoidmain(Stringargs[])

{inta[]={23,67,89,90,-987};doubleb[]={12.89,90.87,34,678.987,-98.78,0.89};

Arrays.sort(a);Arrays.sort(b,1,4);

for(inti=0;i<=4;i++)

{System.out.print(a[i]+“,”);

}

for(inti=0;i

{System.out.print(b[i]+“,”);

}

}

}

5-5使用java.lang包中System类的静态方法arraycopy可以实现数组的快速复制,上机实习下列程序,并总结出arraycopy方法参数的使用规则。

classArrayCopy

{publicstaticvoidmain(Stringargs[])

{charal[]={‘a’,‘b’,‘c’,‘d’,‘e’,‘f’},bl[]={‘1’,‘2’,‘3’,‘4’,‘5’,‘6’};

System.arraycopy(al,0,bl,l,al.length-1);

System.out.println(newString(al));System.out.println(newString(bl));

bytea2[]={97,98,99,100,101,102},b2[]={65,67,68,69,70,71};

System.arraycopy(b2,0,a2,3,b2.length-3);

System.out.println(newString(a2));System.out.println(newString(b2));

}

}

第6章时间、日期和数字

6-1输出某年某月的日历页,通过main方法的参数将年份和月份时间传递到程序中。

6-2计算某年、某月、某日和某年、某月、某日之间的天数间隔。

要求年、月、日通过main方法的参数传递到程序中。

6-3编写练习Math类的常用方法。

第7章AWT工具集简介

7-1下列程序中,一共有多少个组件,哪些组件既是组件又是容器?

importjava.awt.*;

classE6

{

publicstaticvoidmain(Stringargs[])

{

Framefra=newFrame(“?

”);

Fra.setVisible(true);

fra.setBounds(120,100,200,180);

Panelp=newPanel();

Buttonb=newButton(“java”);

TextFieldtext=newTextField(10);

Labellabel=newLabel(“howareyou”);

Checkboxbox=newCheckbox(“Wa”);

p.add(box);

p.add(b);

fra.add(lable,“North”);

far.add(p,“Center”);

far.add(text,“South”);

}

}

第8章JavaApplet基础

8-1查阅编写网页的有关书籍,总结出在网页中加入小应用程序的更多技术细节。

8-2我们可以在超文本中使用若干个‹Param...›标志把值传递到小程序中,例如:

‹paramname=名字串value=值串›

写出下列小程序的输出结果。

小程序和运行该小程序的超文本文件如下。

E2.html;

‹appletcode=E2.classwidth=200height=200›

‹paramname=“girl”value=“160”›

‹paramname=“boy”value=“175”›

‹/applet›

E2.java:

importjava.awt.*;

importjava.applet.*;

publicclassE2extendsApplet

{intx=8,y=9;

publicvoidinit()

{Stringsl=getParameter(“girl”);//从html得到girl的值(字符串类型)

Strings2=getParamete(“boy”);//从html得到boy的值(字符串类型)

x=Integer.parseInt(s1);

y=Integer.parseInt(s2);

}

publicvoidpaint(Graphicsg)

{g.drawstring(“x=“+x+”,“+”y=”+y,90,120);

}

}

第9章文本框和文本区

9-1编写有两个文本区的小应用程序。

当我们在一个文本区中输入若干个数时,另一个文本区同时对你输入的数进行求和运算并求出平均值,也就是说随着你输入的变化,另一个文本区不断地更新求和及平均值。

9-2在下列程序中,当在文本框textl中输入单词Glad后按一次回车键,程序的执行会出现怎样的结果?

按两次回车键会出现怎样的结果?

importjava.applet.*;

importjava.awt.*;importjava.awt.event.*;

publicclassE3extendsAppletimplementsActionListener,TextListener

{TextFieldtextl;TexAreatext2;

publicvoidinit()

{text1=newTextField(12);text2=newTexArea(6,16)

add(text1);add(text2);

text1.addActionListener(this);text2.addTextListener(this);

}

publicvoidactionPerformed(ActionEvente)

{if(e.getSource()==text1)

{text2.append(“\n”+text1.getText());

}

}

publicvoidtextValueChanged(textEvente)

{if(e.getSource()==text2)

{text1.setText(“你好!

”);

}

}

}

9-3所谓异常就是程序运行时可能出现一些错误,比如试图打开一个根本不存在的文件等。

我们没有单独列出一章来讲述异常处理,而是将Java程序中出现的异常问题分散到相应的章节中。

当在文本框读取数字时,使用了如下语句:

doublea=Double.valueOf(text_1.getText()).doubleValue();

那么客户如果在文本框text_1中输入了非数字字母,就无法转化成数字。

这时程序的运行就出现NumberFormatException异常。

Java规定,应当把可能出现异常的操作放在

try{}

catch(){}

块语句中。

比如:

try{a=Double.valueof(text_1.getText()).doubleValue();

}

catch(NumberFormatExceptionevent){}

当出现异常时,就会执行catch块中的语句,如果此块中无语句,就会执行相应的默认处理语句。

实习下列程序,注意观察在text_1中输入25按回车键与输入abc按回车键程序的运行结果。

importjava.apple.*;importjava.awt.*;importjava.awt.event.*;

publicclassE4extendsAppletimplementsActionListener

{TextFieldtext_1=null,text_2=null;

publicvoidinit()

{text_1=newTextField(18);text_2=newTextField(18);

text_1.addActionListener(this);

add(newLable(“输入一个数字后,按Enter”));

add(text_1);add(text_2);

}

publicvoidactionPerformed(ActionEvente)

{doublea=0.0;

text_2.setText(null);

try

{a=Double.valueOf(text_1.getText()).doubleValue();

text_1.setText(“”+Math.sqrt(a));

}

catch(NumberFormatExceptionevent)

{text_2.setText(“请输入数字字符”);

}

}

}

9-4文本区可以使用getSelectedText()方法获取该文本区通过拖动鼠标选中的文本。

上机练习习题4,要求在textl中输入一篇英文短文,,然后用鼠标把英文短文中的动词选出来放入另一个文本区。

importjava.applet.*;

importjava.awt.*;importjava.awt.event.*;

publicclassSelectTextextendsAppletimplementsActionListener

{TextAreatext1,text2;

Buttonb=newButton(“确定”);

publicvoidinit()

{text1=newTextArea(10,10);

text2=newTextArea(10,10);

add(text1);add(text2);

add(b);

b.addActionListener(this);

text2.setEditable(false);

}

publicvoidactionPerformed(ActionEvente)

{text2.append(“\n”+text1.getSelectedText());

}

}

第10章按钮与标签

10-1编写一个小应用程序,在小应用程序的容器中有一个按钮和一个文本框。

当单击按钮时,文本框显示按钮的名字。

10-2编写一个有两个文本框和一个按钮的小应用程序,在一个文本框输入单词girl之后按回车键或单击按钮,另一个文本框能显示“女孩”二字。

10-3编写一个小应用程序,设计4个按钮,分别命名为“加”、“差”、“积”、“除”,以及3个文本框。

单击相应的按钮,将两个文本框的数字做算术运算,在第3个文本框中显示结果。

要求处理NumberFormatException.

10-4编写一个竖状的标签。

第11章面板和画布

11-1写一个小应用程序,要求有一个面板,该面板是Panel类的子类的一个对象,面板中有两个画布组件。

11-2写一个小应用程序,要求有一个画布,在画布上绘制一个矩形,用户通过文本框输入矩形的宽和高,以及矩形左上角的位置坐标。

第12章布局设计

12-1在一个BorderLayout布局的东、西、南、北区域分别添加4个使用盒式布局的容器,要求每个容器中有若干个组件,东、西区域的容器使用列型盒布局,南、北区域的容器使用行型和布局。

12-2FlowLayout、GridLayout、BorderLayout布局都可以调用setHgap(inthgap)和setVgap(intvgap)设置组件的垂直间距和水平间距。

编写程序,通过调整组件的间距达到改变组件大小的目的。

12-3编写一个小应用程序。

小应用程序中有一个面板和按钮,将小应用程序和面板的布局设为null,小应用程序添加面板,面板中添加按钮。

第13章选择型组件

13-1编写一个小应用程序,布局为BorderLayout布局,北面添加一个Choice组件,该组件有4个课程名称的选项。

中心添加一个文本区,当选择Choice组件中的某个选项后,文本区显示对该课程的介绍。

13-2编写应用程序,有一个窗口对象,该窗口取它的默认布局:

BorderLayout布局,北面添加一个List组件,该组件有4个商品名称的选项。

中心添加一个文本区,当选择List组件中的某个选项后,文本区显示对该商品的价格和产地;当用鼠标双击List组件中的某个选项后,文本区显示该商品的明细。

第14章Component类的常用方法

14-1编写程序,观察各种组件设置背景色和前景色的情况。

14-2编写小应用程序,其布局为null,在容器中有两个按钮,单击一个按钮让另一个按钮移动。

14-3编写小应用程序,其布局为null,在容器中有3个按钮和一个画布,3个按钮的颜色分别为红、绿、蓝。

单击相应的按钮,画布绘制相应颜色的圆。

14-4编写程序,测试Cursor类中表示鼠标形状的静态常量。

第15章建立窗口和菜单

15-1Frame类的对象的默认布局是什么布局?

和Panel类对象的默认布局相同吗?

15-2创建Frame窗口对象时可以不设置该窗口的大小吗?

15-3一个容器对象是否可以使用add方法添加一个Frame窗口?

窗口可以嵌套吗?

15-4编写一个应用程序,有一个Frame窗口,窗口的中心添加了一个文本区。

该窗口中有4个菜单。

每个菜单里都有菜单项,每个菜单项都对应有快捷键,选择某个菜单项时窗口中心的文本区显示某些信息。

15-5上机实习下列程序,学会弹出式菜单的使用。

importjava.awt.*;importjava.awt.event.*;

publicclassPopupMenuTestextendsFrameimplementsActionListener

{Buttonb=null;PopupMenumenu;

PopupMenuTest()

{menu=newPopupMenu(“我是弹出式菜单,是Menu的子类”);

menu.add(newMenuItem(“copy”));menu.add(newMenuItem(“paste”));

menu.add(newMenuItem(“save”));add(menu);

b=newButton(“ok”);add(b,“North”);b.addActionListener(this);

setSize(200,200);setVisible(true);

addWindowListener(newWindowAdapter();

{publicvoidwindowClosing(WindowEvente)

{System.exit(0);

}

});

}

publicvoidactionPerformed(ActionEvente)

{menu.show(b,20,5);//show()显示时,第一个参数必须是一个组件,使得菜单从该//组件的坐标系统的(20,5)位置弹出

}

publicstaticvoidmain(Stringargs[])

{newPopupMenuTest();

}

}

第16章建立对话框

16-1编写一个应用程序,用户可以在一个文本框里输入数字字符,按回车键后将数字放入一个文本区。

当输入的数字大于1000时,弹出一个有模式的对话框,提示用户数字已经大于1000,是否继续将该数字放入文本区。

16-2参考Windows平台的NotePad,编写一个简单的“记事本”程序。

第17章Java与图形

17-1编写一个应用程序,绘制五角形,并打印出来。

17-2用java2D绘制一条抛物线的一部分。

17-3用java2D绘制双曲线的一部分。

17-4利用java2D的平移、缩放、旋转功能绘制一个你喜欢的图形。

17-5利用图形的布尔运算绘制各种样式的“月牙”。

第18章Java中的鼠标事件和键盘事件

18-1完善例子18.5,要求能改变“画笔”的粗细及橡皮擦的大小。

18-2进一步改进例子7,要求一个按钮在移动时,不允许和其他按钮相交。

18-3上机实习下列程序,掌握复合键的使用。

i

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2