java程序填空.docx
《java程序填空.docx》由会员分享,可在线阅读,更多相关《java程序填空.docx(17页珍藏版)》请在冰豆网上搜索。
![java程序填空.docx](https://file1.bdocx.com/fileroot1/2023-2/25/237a42a0-62e5-4ee9-bd3e-1d649519e4e6/237a42a0-62e5-4ee9-bd3e-1d649519e4e61.gif)
java程序填空
程序填空题
1、定义一个长度为5的字符串数组,并初始化其初值为“open”,“door”,“the”,“open”,“name”;计算该数组中“open”出现的次数,并倒序输出数组元素。
publicclassTest{
publicvoidstaticmain(String[]args){
//声明并初始化数组
(1)
intcount=0;
//计算该数组中“open”出现的次数
(2)
{
(3)
count++;
}
//倒序输出数组元素
(4)
{
(5)
}
}
}
2、定义一个抽象类AbstractTest,其中有一个公共的抽象方法printMsg()。
然后定义此抽象类的一个子类DefaultTest,包括的成员变量有姓名,学号,分数,且此类中包括二个构造方法。
abstractclassAbstractTest{
(1)
}
(2)
{
Stringname;
Stringid;
intscore;
//接收三个参数的构造方法
(3)
//接收姓名和学号二个参数的构造方法
(4)
//实现抽象方法,方法体为打印出学生的姓名与成绩
(5)
}
3、编写程序实现窗口,包含一个标签、一个文本框和一个按钮,当用户单击按钮时,程序把文本框中的内容提制到标签中。
(使用AWT)
//引入相关包
(1)
publicMyFrame{
publicMyFrame(){
Framefr=newFrame();
//设置窗体的布局为FlowLayout
(2)
Labellbl=newLabel(“Initinfo”);
TextFieldtxt=newTextField(30);
Buttonbtn=newButton(“Sure”);
fr.add(lbl);
fr.add(txt);
fr.add(btn);
//给按钮注册监听器
(3)
//使用窗体可见,并设置大小
(4)
}
//定义内部类监听ActionEvent事件
(5)
{
publicvoidactionPerformed(ActionEvente){
lbl.setText(txt.getText());
}
}
publicstaticvoidmain(String[]args){
newMyFrame();
}
}
4、设计程序实现带菜单的窗口,包含“File”和“Edit”二个菜单,在“File”下又包含“New”,“Open”,“Exit”三个菜单项,选择“Exit”项时退出应用程序。
(提示:
涉及到的类有MenuBar,Menu,MenuItem)
importjava.awt.*;
importjava.awt.event.*;
publicclassMenuTest{
//定义各菜单项
MenuItemnewItem=newMenuItem(“New”);
MenuItemopenItem=newMenuItem(“Open”);
MenuItemexitItem=newMenuItem(“Exit”);
publicMenuTest(){
Framefr=newFrame();
//定义菜单
MenufileMenu=newMenu(“File”);
MenueditMenu=newMenu(“Edit”);
//往File菜单中添加菜单项newItem,openItem,exitItem
(1)
//定义菜单条,并添加菜单fileMenu,editMenu
(2)
//给窗口添加菜单条
fr.setMenuBar(bar);
//给exitItem注册事件
(3)
//设置窗口的可见性
fr.setSize(200,200);
fr.setVisible(true);
}
//定义内部类处理菜单事件
classMenuHandlerimplementsActionListener{
publicvoidactionPerformed(ActionEvente){
//如果用户点击了exit菜单项则退出程序
(4)
System.exit(0);
}
}
//定义main方法
(5)
}
5、定义接口Student,该接口中有一个无参、无返回值的方法prtMsg;定义类College,包括的私有属性有id和name,包括一个接收学生学号和姓名的构造方法,并且实现Student接口。
interfaceStudent{
(1)
}
(2)//College类的声明,实现Student接口
{
(3)//定义私有成员变量id和name,类型自定
(4)//构造方法声明和定义,接收二个参数
(5)//实现prtMsg方法的声明
{
//prtMsg的方法体
System.out.println(id+name);
}
}
6、写程序实现包括一个复选框的窗体,并处理用户选取事件。
importjava.awt.*;
importjava.awt.event.*;
(1)//类声明,类名为MyCheck,继承自Frame类
{//类体
publicMyCheck(){
(2)//创建Panel的一个实例,并设置其布局为FlowLayout
Checkboxcbx=newCheckbox(“isPassed”);
(3)//向面板中加入组件cbx,并为组件注册监听器
add(p);
(4)//把窗体设为可见,并设置大小
}
publicstaticvoidmain(String[]args){
newMyCheck();
}
//定义内部类实现监听,相应的监听接口为ItemListener
(5)//内部类的声明
{
publicvoiditemStateChanged(ItemEvente){
System.out.println(e);
}
}
}
7、定义类Stu,并把该类放在当前目录下的包com中:
包括的成员变量有:
常量classid,类变量school,公共成员变量id和name,私有成员变量age。
包括的方法有:
一个具有二个参数的构造方法;公共静态方法getSchool();主方法。
(1)//把该类放在当前目录下的包com中
publicclassStu{
(2)//字符串常量classid
(3)//字符串类变量school,并把其值初始化为“YEU”
privateintage;
publicStringid;
publicStringname;
(4)//构造方法声明,接收二个参数ids和names
{
id=ids;
name=names;
}
(5)//公共静态方法getSchool()的声明
{
returnschool;
}
//主方法
publicstaticvoidmain(String[]args){
System.out.println(Stu.getSchool());
System.out.println(Stu.school);
}
}
8、使用默认表格模型类创建一个JavaSwing表格,并在窗体中显示。
//
(1)引入相应的package
publicclassTableTestextendsJFrame{
publicTableTest(){
String[]colNames={“id”,“Name”,“Score”};
//
(2)定义二维对象数组,并初始化;
//(3)创建DefaultTableModel类的对象tm,
//其构造方法为:
DefaultTableModel(Object[][],object[])
//(4)使用tm创建表格对象,并添加到滚动面板(JScrollPane)中;
//(5)得到窗体的内容面板,并添加滚动面板对象
pack();
setVisible(true);
}
publicstaticvoidmain(String[]args){
newTableTest();
}
}
9、定义客户化的表格模型类CustomTableModel,其父类为DefaultTableModel,并重写其中的isCellEditabl和getColumnClass方法;并使用CustomTableModel类创建一个JavaSwing表格。
importjavax.swing.*;
importjavax.swing.table.*;
importjava.awt.*;
publicclassTableDemoextendsJFrame{
publicTableDemo(){
String[]colnames={"Name","IsPassed","Scroe"};
Object[][]data={
{"Wang",false,59},
{"Cui",true,89},
{"Zhao",true,95}
};
//
(1)创建CustomTableModel类的一个实例tm,
//使用构造方法JTable(TableModeltableModel)创建表格对象
JScrollPanejsp=newJScrollPane(table);//把表格加入滚动面板中
//
(2)得到窗体的内容面板,并添加滚动面板对象
setSize(300,300);
setVisible(true);
}
classCustomTableModelextendsDefaultTableModel{
publicCustomTableModel(Object[][]data,Object[]colNames){
//(3)调用父类的构造方法:
DefaultTableModel(Object[][],Object[])
}
//重写父类的getColumnClass方法
publicClassgetColumnClass(intcol){
//(4)返回各列的类型
}
//重写父类的isCellEditable方法
publicbooleanisCellEditable(introw,intcol){
//(5)使第0行和第2行可编辑
}
}
}
10.应用树结点构造一棵树,其根结点为“M0407”,根结点下有三个结点“C040701”,“C040702”,“C040703”,并且结点“C040701”又包括二个树叶结点“R201”,“R202”。
提示:
结点类为DefaultMutableTreeNode。
importjavax.swing.*;
importjavax.swing.tree.*;
publicclassTreeTestextendsJFrame{
publicTreeTest(){
//
(1)定义树的根结点
//定义“C040701”,“C040702”,“C040703”三个结点
DefaultMutableTreeNoder1=
newDefaultMutableTreeNode(“C040701”);
DefaultMutableTreeNoder2=
newDefaultMutableTreeNode(“M040702”);
DefaultMutableTreeNoder3=
newDefaultMutableTreeNode(“M040703”);
//
(2)定义“R201”,“R202”二个结点
//(3)使用根结点创建树
//(4)为根结点添加r1,r2,r3三个子结点
//为结点r1添加“R201”,“R202”二个子结点
getContentPane().add(tree);
setSize(200,200);
setVisible(true);
}
}
11.处理树结点选择事件,事件类为TreeSelectionEvent,事件监听接口为TreeSelectionListener。
importjavax.swing.*;
//
(1)引入其它的相关包
publicclassTreeDemo{
publicTreeDemo(){
DefaultMutableTreeNoderoot=
newDefaultMutableTreeNode(“Room”);
DefaultMutableTreeNoder1=
newDefaultMutableTreeNode(“R1”);
DefaultMutableTreeNoder2=
newDefaultMutableTreeNode(“R2”);
//
(2)创建树,其根结点为root,根结点下有二个子结点r1和r2
//(3)为树注册监听器
JFramefr=newJFrame();
fr.getContentPane().add(tree);
fr.setSize(300,300);
fr.setVisible(true);
}
//(4)声明内部类TreeHandler,实现监听
{
publicvoidvalueChanged(TreeSelectionEvent){
//得到事件源对象,并强制转换为JTree类型
JTreetree=(5);
TreeNodenode=(TreeNode)tree.getLastSelectedPathComponent();
System.out.println(“Youselected:
”+node.toString());
}
}
}
12.定义类ThdTest,其父类为Thread类;并在主方法中创建一个ThdTest的对象,同时启动该线程对象。
//声明类ThdTest,其父类为Thread类
(1)
{
publicvoidrun(){
for(inti=0;i<10;i++){
//输出当前线程的名字和i的值
(2)
try{
//让当前线程休眠100ms
(3)
}catch(Exceptione){e.printStackTrace();}
}
}
}
publicclassDemo{
publicstaticvoidmain(String[]args){
//创建一个ThdTest的对象
(4)
//启动线程对象,使其进入就绪状态
(5)
}
}
13.定义类ThdDemo,实现接口Runnable;并在主方法中创建一个ThdDemo的对象td,然后使用对象td创建一个线程对象,同时启动该线程对象。
//声明类ThdDemo,实现接口Runnable
(1)
classThdDemoimplementsRunnable{
publicvoidrun(){
for(inti=0;i<10;i++){
//输出当前线程的名字和i的值
System.out.println(Thread.currentThread().getName()+“:
”+i);
try{
//让当前线程休眠100ms
(2)
}catch(Exceptione){e.printStackTrace();}
}
}
}
publicclassDemo{
publicstaticvoidmain(String[]args){
//创建一个ThdDemo的对象td
(3)
//使用td创建线程对象
(4)
//启动线程对象,使其进入就绪状态
(5)
}
}
14.制作一个窗体,包括一个带图标的按钮(JButton类对象),并设置边框,当用户点击按钮时,弹出一个确认对话框。
importjavax.swing.*;
importjavax.swing.border.*;
importjava.awt.*;
classViewDemo{
JFramefr;
publicViewDemo(){
//用ImageIcon类包装一张图片(java.gif),
//该图片在当前目录的img子目录下
(1)
//创建一个带有图标的按钮btn
(2)
/**使用线形边框类的构造方法LineBorder(Colorc,intn),
*创建一个边框对象bd,其中c为边框的颜色,n为边框的粗细。
*/
(3)
btn.setBorder(bd);
//给按钮注册监听事件
(4)
fr=newJFrame();
Containerc=fr.getContentPane();
c.add(btn);
fr.setSize(300,300);
fr.setVisible(true);
}
classBtnHandlerimplementsActionListener{
publicvoidactionPerformed(ActionEvente){
Stringmsg="Areyousure?
";
/*使用JOptionPane类的静态方法showConfirmDialog(Framef,Strings),其中f为对话框所属的窗体,s为对话框显示的信息,弹出一个确认对话框。
*/
(5)
}
}
}
15.制作一个Applet小应用程序,设置其布局为BorderLayout,定义一个按钮和多行文本框并分别放到“North”区域和“Center”区域。
创建网页文件运行这个Applet程序。
importjava.applet.*;
importjavax.swing.*;
//
(1)声明AppletDemo类,其父类为Applet,并实现接口ActionListener
{
JButtonbtn;
JTextAreatxt;
publicvoidinit(){
//设置其布局为BorderLayout
(2)
btn=newJButton(“ShowMsg”);
txt=newJTextArea(3,20);
//把按钮btn放到“North”区域,txt放到“Center”区域
(3)
//给按钮注册监听器
(4)
}
publicvoidactionPerformed(ActionEvente){
txt.append(btn.getText());
}
}
网页文件为: