您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 工程监理 > 04网络工程java应用试卷+答案
第1页共8页安徽农业大学经济技术学院2006―2007学年第一学期《Java应用》试卷(A卷)考试形式:闭卷笔试,2小时,总分100分适用专业:04网络工程(二)题号一二三四五总分得分一、选择题(共5小题,每小题3分,共15分)1、下列关于JTextField对象和JTextArea对象描述不正确的是(D)A.都是用于文本输入B.JTextField对象只支持单行文本输入C.JTextArea对象支持多行文本输入D.JTextField对象继承自JTextArea对象,是JTextArea对象的一种特例2、下列说法正确的是(ACD)A.Java图形坐标系统中,横坐标x值从左向右增加B.Java图形坐标系统中,纵坐标y值从下向上增加C.Java2DAPI的Line类用来定义直线D.Java2DAPI的Ellipse类用来定义椭圆3、JavaSwing组件中JLabel表示(B)组件A.按钮组件B.标签组件C.列表组件D.复选框组件4、MouseListener可以监听的事件不包括(C)A.mousePressed事件B.mouseEntered事件C.mouseMoved事件D.mouseClicked事件5、关于Java中多线程的描述正确的是(A)A.Java中用Thread类对象表示线程B.默认情况,Java中子线程优先级比父线程高得分评阅人学院:专业班级:姓名:学号:装订线第2页共8页C.一个线程的执行任务不可以在不是Thread对象中指定D.一个线程休眠时,其他线程不可运行二、填空题(共9空,每空1分,共9分)1、Java中用Color类对象表示颜色,用Font类对象表示字体,设置系统颜色和字体分别用Graphics对象的setColor方法和setFont方法。2、设有面板JPanelp1=newJPanel();欲使该面板上所有组件均匀分布,则应执行p1.setLayout(newGridLayout());语句。3、Java中用File类对象表示文件和目录,试用该类对象表示目录“C:\temp”Filef1=newFile(“C:\temp”)。4、试补充以下程序完成点击按钮时,在标签上显示“今天很开心”JButtonb1=newJButton(“按钮”);JLabell1=newJLabel();b1.addActionListener(this);//注册动作事件,填写方法名publicvoidactionPerformed(ActionEvent){l1.setText(“今天很开心”);//填写方法名}三、判断题(以下为Panduan.java文件中程序,每行最多有一个语法错误,如果有错误,在括号里打”X”并改正;如果无错误,在括号里打”V”)(共12小题,每小题1.5分,共18分)1.importjava.io.*(x)2.publicclasspanduan{(x)3.staticTestt1=newTest();(v)4.publicstaticmain(Stringargs[])(x)5.{try{intx=System.in.read();(v)6.t1.setX(intx);}(x)7.catch(Panduane)(x){e.printStackTrace();}}}8.classTest()(x)得分评阅人得分评阅人第3页共8页9.{intx;(v)10.test(intnewx)(x)11.{x=newx;}(v)publicvoidsetX(intx)//设置属性变量x的值12.{x=x;}}(x)四、程序分析题(共2小题,每小题9分,共18分)(分析以下程序输出)1、classProduceIntegerextendsThread{//构建生产者线程privateHoldIntegerUnsynchronizedsharedObject;//用于表示共享数据的对象publicProduceInteger(HoldIntegerUnsynchronizedshared){super(ProduceInteger);//初始化sharedObject=shared;}publicvoidrun()//线程运行时执行的任务{for(intcount=1;count=3;count++){inttime=(int)(Math.random()*3000);try{Thread.sleep(time);//线程休眠Math.random()*3000毫秒}catch(InterruptedExceptionexception){}sharedObject.setSharedInt(count);//把当前的共享数据设置为新的值}System.err.println(getName()+结束生产值+\n终止+getName());}}classConsumeIntegerextendsThread{//构建消费者线程privateHoldIntegerUnsynchronizedsharedObject;//表示共享数据的对象publicConsumeInteger(HoldIntegerUnsynchronizedshared){super(ConsumeInteger);sharedObject=shared;}publicvoidrun(){intvalue,sum=0;do{inttime=(int)(Math.random()*3000);try{Thread.sleep(time);}catch(InterruptedExceptionexception){}value=sharedObject.getSharedInt();sum+=value;}while(value!=3);System.err.println(getName()+结束的数据总值为:+sum+\n终止+getName());}}得分评阅人学院:专业班级:姓名:学号:装订线第4页共8页classHoldIntegerUnsynchronized{privateintsharedInt=-1;publicvoidsetSharedInt(intvalue)//修改sharedInt变量的值{System.err.println(Thread.currentThread().getName()+把sharedInt设置为+value);sharedInt=value;}publicintgetSharedInt()//获得sharedInt变量的值{System.err.println(Thread.currentThread().getName()+接受到sharedInt值为+sharedInt);returnsharedInt;}}publicclassSharedCell{publicstaticvoidmain(Stringargs[]){HoldIntegerUnsynchronizedsharedObject=newHoldIntegerUnsynchronized();ProduceIntegerproducer=newProduceInteger(sharedObject);ConsumeIntegerconsumer=newConsumeInteger(sharedObject);producer.start();consumer.start();}ConsumeInteger接受到sharedInt值为-1ConsumeInteger接受到sharedInt值为-1ProduceInteger把sharedInt设置为1ConsumeInteger接受到sharedInt值为1ProduceInteger把sharedInt设置为2ConsumeInteger接受到sharedInt值为2ProduceInteger把sharedInt设置为3ProduceInteger结束生产值终止ProduceIntegerConsumeInteger接受到sharedInt值为3ConsumeInteger结束的数据总值为:4终止ConsumeInteger未使用线程同步,所以输出不确定第5页共8页2、publicclassTtest1{publicstaticvoidmain(Stringargs[]){for(inti=1;i16;i++)System.out.println(fi[+i+]=+jishu(i));}publicstaticintjishu(intn){if(n0)return-1;if(n4)return1;returnjishu(n-3)+jishu(n-1);}}fi[1]=1fi[2]=1fi[3]=1fi[4]=2fi[5]=3fi[6]=4fi[7]=6fi[8]=9fi[9]=13fi[10]=19fi[11]=28fi[12]=41fi[13]=60fi[14]=88fi[15]=129五、程序设计题(共4小题,每小题10分,共40分)1、编写一个程序绘制一个10*10的网格,每格(正方形)边长为20像点。importjavax.swing.*;importjava.awt.*;publicclassTest2extendsJFrame{Test2(){this.setSize(400,300);this.setVisible(true);}publicvoidpaint(Graphicsg){super.paint(g);得分评阅人学院:专业班级:姓名:学号:装订线第6页共8页for(inti=0;i20;i++){g.drawLine(10,10+i*10,200,10+i*10);}for(intj=0;j20;j++){g.drawLine(10+j*10,10,10+j*10,200);}}publicstaticvoidmain(Stringargs[]){newTest2();}}2、写一个十进制数0~9的ASC码转换程序。从键盘上输入(通过一个JTextField)十进制数,再使用一个JLabel显示转换的ASC码值。(0~9的ASC码为30H~39H)importjavax.swing.*;importjava.awt.*;importjava.awt.event.*;publicclassTest3extendsJFrameimplementsActionListener{JTextFieldjt1;JLabeljl1;publicTest3(){jt1=newJTextField(6);jl1=newJLabel(Asc码);this.setLayout(newFlowLayout());//设置为流式布局//在界面上添加文本框和标签this.add(jt1);this.add(jl1);//文本框的动作事件由当前对象响应,执行当前类中的actionPerformed方法jt1.addActionListener(this);//设置当前界面属性this.setSize(400,300);this.setVisible(true);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);}publicvoidactionPerformed(ActionEventevt){//响应文本框的回车键事件(动作事件)Strings=this.jt1.getText();intsoi=Integer.parseInt(s);第7页共8页s=Integer.toHexString(soi+0x30);this.jl1.setText(s);}publicstaticvoidmain(Stringargs[]){//新建界面newTest3();}}3、编写程序,提供一个JTextArea组件和一个JButton按钮,当点击按钮时把用户在JTextArea上输入的内容写入C:盘根目录下1
本文标题:04网络工程java应用试卷+答案
链接地址:https://www.777doc.com/doc-3117969 .html