1、(A)二级 JAVA 笔试-10 及答案解析(总分:100.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:30.00)1.本题定义了一个长度为 10 的 boolean 型数组,并给数组元素赋值,要求如果数组元素下标为奇数,则数组元素值为 false,否则为 true。public class java1public static void main(String args)boolean b=_;for(int i=0; i10; i+)if(_)bi=false;else_;for(int i=0; i10; i+)System. out. print(“b“+i+“=“+
2、bi+“,“);(分数:30.00)填空项 1:_二、简单应用题(总题数:1,分数:30.00)2.本题是一个 Applet,它的功能是在窗口上添加 1212 个标签,并且横向和纵向标签的颜色为黑白相间。import java. applet. * ;import java. awt. * ;import java. awt. event. * ;public class java2extends AppletGridLayout grid;public void init()grid=new GridLayout(12,12);setLayout(grid);Label_=new Label
3、1212;for(int i=0; i12; i+)for(intj=0; j12; j+)labelij=_;if(i+j)%2=0)labelij. setBackground(Color. black);elselabelij. setBackground(Color. white);add(labelEij);(分数:30.00)填空项 1:_三、综合应用题(总题数:1,分数:40.00)3.本题的功能是获得系统剪贴板中的内容。窗口中有一个菜单“Edit”和一个文本域,“Edit”中有菜单项“Cut”、“Copy”和“Paste”,在文本域中输入内容,可以通过菜单进行剪切、复制和粘贴操
4、作,如果系统剪贴板为空,又做粘贴操作的话,则设置文本域中背景颜色为红色,并显示错误信息。import java. awt. * ;import java. io. * ;import java. awt. datatransfer. * ;import java. awt. event. * ;class java3 extends Frame implements ActionListener,ClipboardOwner TextArea textArea=new TextArea();java3()super(“java3“);addWindowListener(new WindowAd
5、apter()public void windowClosing(WindowEvent e)System. exit(0);/);MenuBar mb=new MenuBar();Menu m=new Menu(“Edit“);setLayout(new BorderLayout();add(“Center“, textArea);m. add(“Cut“);m. add(“Copy“);m. add(“Paste“);mb. add(m);setMenuBar(this);for (int i=0; im. getItemCount(); i+)m. item(i). addActionL
6、istener(this);setSize(300,300);show();public void actionPerformed(ActionEvent evt)if (“Paste“. equals(evt, getActionCommand()boolean error=true;Transferable t=getToolkit(). getSystemClipboard(). getContents(this);tryif(t ! =null textArea. setForeground(Color, black);textArea. replaceRange(String) t.
7、 getTransferData(DataFlavor. stringFlavor),textArea. getSelectionStart(),textArea. getSelectionEnd();error=false;catch(UnsupportedFlavorException e)catch(IOException e)if (error)textArea. setBackground(Color, red);textArea. setForeground(Color, white);textArea. repaint();textArea. setText(“ERROR:/nE
8、ither the clipboard“+“ is empty or the contents is not a string.“);else if (“Copy“. equals(evt. getActionCommand()setContents();else if (“Cut“. equals (evt. getActionCommand()setContents ();textArea. replaceRange(“, textArea. getSelectionStart(), textArea. getSelectionEnd();void setContents()S=textA
9、rea. getSelectedText();StringSelection contents=new StringSelection(s);getToolkit(). getSystemClipboard(). setContents(contents, this);public void lostOwnership (Clipboard clipboard, Transferable contents)System. out. println(“lost ownership“);public static void main(String args)new java3();(分数:40.0
10、0)填空项 1:_(A)二级 JAVA 笔试-10 答案解析(总分:100.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:30.00)1.本题定义了一个长度为 10 的 boolean 型数组,并给数组元素赋值,要求如果数组元素下标为奇数,则数组元素值为 false,否则为 true。public class java1public static void main(String args)boolean b=_;for(int i=0; i10; i+)if(_)bi=false;else_;for(int i=0; i10; i+)System. out. print(“b
11、“+i+“=“+bi+“,“);(分数:30.00)填空项 1:_ (正确答案:第 1 处:new boolean10第 2 处:i%2!=0第 3 处:bi=true)解析:解析 第 1 处定义了一个长度为 10 的 boolean 型数组;第 2 处判断数组元素下标是否为奇数。第3 处不为奇数的情况下数组元素值设为 true。二、简单应用题(总题数:1,分数:30.00)2.本题是一个 Applet,它的功能是在窗口上添加 1212 个标签,并且横向和纵向标签的颜色为黑白相间。import java. applet. * ;import java. awt. * ;import java.
12、 awt. event. * ;public class java2extends AppletGridLayout grid;public void init()grid=new GridLayout(12,12);setLayout(grid);Label_=new Label1212;for(int i=0; i12; i+)for(intj=0; j12; j+)labelij=_;if(i+j)%2=0)labelij. setBackground(Color. black);elselabelij. setBackground(Color. white);add(labelEij)
13、;(分数:30.00)填空项 1:_ (正确答案:第 1 处:label第 2 处:new label())解析:解析 第 1 处定义了一个长度为 1212 的 Label 型数组;第 2 处为数组元素赋值。三、综合应用题(总题数:1,分数:40.00)3.本题的功能是获得系统剪贴板中的内容。窗口中有一个菜单“Edit”和一个文本域,“Edit”中有菜单项“Cut”、“Copy”和“Paste”,在文本域中输入内容,可以通过菜单进行剪切、复制和粘贴操作,如果系统剪贴板为空,又做粘贴操作的话,则设置文本域中背景颜色为红色,并显示错误信息。import java. awt. * ;import j
14、ava. io. * ;import java. awt. datatransfer. * ;import java. awt. event. * ;class java3 extends Frame implements ActionListener,ClipboardOwner TextArea textArea=new TextArea();java3()super(“java3“);addWindowListener(new WindowAdapter()public void windowClosing(WindowEvent e)System. exit(0);/);MenuBar
15、 mb=new MenuBar();Menu m=new Menu(“Edit“);setLayout(new BorderLayout();add(“Center“, textArea);m. add(“Cut“);m. add(“Copy“);m. add(“Paste“);mb. add(m);setMenuBar(this);for (int i=0; im. getItemCount(); i+)m. item(i). addActionListener(this);setSize(300,300);show();public void actionPerformed(ActionE
16、vent evt)if (“Paste“. equals(evt, getActionCommand()boolean error=true;Transferable t=getToolkit(). getSystemClipboard(). getContents(this);tryif(t ! =null textArea. setForeground(Color, black);textArea. replaceRange(String) t. getTransferData(DataFlavor. stringFlavor),textArea. getSelectionStart(),
17、textArea. getSelectionEnd();error=false;catch(UnsupportedFlavorException e)catch(IOException e)if (error)textArea. setBackground(Color, red);textArea. setForeground(Color, white);textArea. repaint();textArea. setText(“ERROR:/nEither the clipboard“+“ is empty or the contents is not a string.“);else i
18、f (“Copy“. equals(evt. getActionCommand()setContents();else if (“Cut“. equals (evt. getActionCommand()setContents ();textArea. replaceRange(“, textArea. getSelectionStart(), textArea. getSelectionEnd();void setContents()S=textArea. getSelectedText();StringSelection contents=new StringSelection(s);ge
19、tToolkit(). getSystemClipboard(). setContents(contents, this);public void lostOwnership (Clipboard clipboard, Transferable contents)System. out. println(“lost ownership“);public static void main(String args)new java3();(分数:40.00)填空项 1:_ (正确答案:第 1 处:setMenuBar(mb)第 2 处:m. getltem(i). addActionListener(this)第 3 处:String s=textArea. getSelectedText())解析:解析 第 1 处设定菜单栏,setMenuBar 参数应为菜单栏,此处 this 为 Frame;第 2 处获得菜单项应使用 getItem()方法。第 3 处变量 s 使用前未定义,从 getSelectedText()可以看出,数据为文本域中选择的内容,故为 String 类型。