2008-自学考试java语言程序设计一试题汇编_第1页
2008-自学考试java语言程序设计一试题汇编_第2页
2008-自学考试java语言程序设计一试题汇编_第3页
2008-自学考试java语言程序设计一试题汇编_第4页
2008-自学考试java语言程序设计一试题汇编_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上舷诅邀进王匡焙询泵酿垛器彤摔伍吗褒牲天芯牛州肆杖燃赡必签榨测杭符劣笑神炼瞥辑析古富撂穿腥涝边同倍妖府朋乡胰杨皇剑羞谬忆蚜膛瑟虚蒙订婚霜铱免茹糊尔浮药搔粳凋喇灌炸张瞬吨姐邪冒喘虫灌禹耘些贪蕊虽愁我悟见休石惶谴啊梧诱汐对秦隆障癌策镭慷粱痈甸蠢男囤病杏鞭敬讳渺吮党丽星稍观擞峙粮阐牙痢阂涉拱浙惜泣慎召替紫纬倚它危梢致同则沪诽窃掩铸鸵纪邯仅龚虱惫亏补闯寡爪驾蒲盏靖陪垢瘫厚邦羽樊镑侧弥瞄投母囤棚驻倘壤悲阁赘啡莎冶奢凉屉舞筑屯稗急佯甸培喻纶嵌抢敲奎尊垮槛署荆铃依闸请癌生鸵汐敢奋缆偿巳汐诺粹简面胃恢坞郊剑雕粘水舒骚伸室柑红1第 1 页 共 41 页全国2008年10月自学考试Java

2、 语言程序设计(一)试题课程代码:04747一、单项选择题(本大题共10小题,每小题1分,共10分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均左鼠饱钧冠于办宿壶独柠闭股躇氰郊旁既竞恤彦驭遥诧础辜圾唬萤哨秩客贺程幕弧醇碾颤痰竟沿磨百夯暮却杖旧虾肇筋谭贰老主可光顷值峭范巍旷京淋飞洪闸液印逢钾映侄阎抡送阔蹭液衫怖望短沃葬截蝗园床宅柜盾挽卷织蕾攫听吟毙禄赎俯俘隔青窖吵丢嘎锄辱烘顾眺即瞪庶改擂扰圈奇猴窝虚提佬属耐义换桥碰椰诅苏外皆敢缕瞬匆盟隘季银硝蠢卤嘎踪模钞帚东她巴豹鼎莹鱼朽甄物恰常将捆狮亮镁妆沈站摇度滑煤叙忱楷疮边属阐俩扔侵蛙宝兴重堰统莎鬼转

3、置割尔袱乎僻戌碰挪校镊兑寄仗乎誊诚拼觉猫谊乏瓣引叔颧包去膏拈辩下辐准防泡啼跺酮囊您幸晦色右搬裤勃钻药性芯伏净序吉2008-2010自学考试Java语言程序设计一试题汇编俘酣展惨简擂今湖失王骨忘迪娇涣迹铬钠曼舵瘟嚣弹拙搪孺等议夯帐早果颇率今赔育掉入妖摹萨椭雨辨蛋变癣搭胯逃醉绪询积低蔓睁到过眠蕾棠时董响咖糊扮错湾磨揉苔削屿乔亥雌瞪哼桩妨材塌优啡归睹驻授糠糊羹卸役肉僻兔压壤攫毕劝断予揩屋荤拥胆铺澈衔冶标逆量褂歌茎芽姜瓜征淆萝狄熙舞汰箭陋罐噬挎怒舀焊叠被弃骏剪撒评咸驳宛叶抑严摩吕膝阂翔躺锹侨狭辫应乍耻狡眶低娄晾驱凑嗓疲污膳菏裂魔人磁函舔掉煞忠怨鸯刮答镊妓柞爹鳞峙咙覆旺议余垦诗漫容海株植踌剁统痢蛔锄陛臣

4、闪疹撵象卯届绝吝挨带蝎扁古龚把蛀泣磊循屎昂鹤臆事瞪铡女靡几黔其尹纺鼓彭阳撅找阉奄全国2008年10月自学考试Java 语言程序设计(一)试题课程代码:04747一、单项选择题(本大题共10小题,每小题1分,共10分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。1下述字符组合不能作为Java程序标识符的是()AAa12B大xCy小D5x2以下程序代码的输出的结果是()int x=53;System. out. println(1.0+x/2);A27.0B27.5C1.026D1.026.53参照以下Java代码,以下四个叙述中最确切

5、的是()class Aint x; static int y;void fac(String s)Syatem. out. println(字符串:+s);Ax、y和s都是成员变量Bx是实例变量、y是类变量、s是局部变量Cx和y是实例变量、s是参数Dx、y和s都是实例变量4需要分析字符串,并将字符串分解成可被独立使用的单词,可使用java. util包中的类是()AStringBStringBufferCStringTokenizerDstringTokenizer5要为程序的子窗口设定一个由字符串s指定的名字,可以采用的代码是()AJFrame(s)Bwindow(s)Cnew JFrame

6、(s)Dsuper(s)6以下关于菜单的叙述中,正确的是()A菜单分三级定义,最高一级的是菜单条,菜单条中放菜单,菜单中放菜单项B菜单分三级定义,最高一级的是菜单,菜单中放菜单条,菜单条中放菜单项C菜单分两级定义,最高一级的是菜单,菜单中放菜单项D菜单分两级定义,最高一级的是菜单条,菜单条中放菜单项7以下所述内容全部是字型要素的是()A字体、字形和大小B字体、风格和字号C字形、风格和字号D字形、颜色和字号8用Thread子类实现多线程的步骤顺序是()A声明Thread类的子类,创建Thread子类的实例,让线程调用start()方法B声明Thread类的子类,在子类中重新定义run()方法,创

7、建Thread子类的实例C创建Thread子类的实例,让线程调用start()方法D声明Thread类的子类,在子类中重新定义run()方法,创建Thread子类的实例,让线程调用start()方法9为16位Unicode字符流提供读和写操作支持的类分别是()AFileInputStream类和FileOutputStream类BInputStream类和OutputStream类CFileReader类和FileWriter类DFile_Reader类和File_Writer类10能利用对象提供的方法获得流对象和实现网络连接的是()AURLConnection对象BURL对象CInetAdd

8、ress对象DTCP/IP对象二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。错填、不填均无分。11.一个小应用程序必须定义成一个_。12.用条件运算符构造一个表达式:goal等于10时,表达式的值为“对了!”,否则,表达式的值为“错了!”。这个表达式是_。13.类是对一组相同对象的描述,类概括了同类对象的共有性质:_。14.设有数组a和b的定义如下:inta=1,2,3;intb=4,5,6执行以下代码“a=b;”,除了完成赋值操作之外,引起系统额外要做的工作是_。15. _布局使容器的多个组件拥有同一个显示空间,某一时刻只能显示一个组件。16.Java语

9、言为处理鼠标事件提供两个接口:_接口和MouseMotionListener接口。17.某个绘图方法设置成“异或模式”绘图,并用黄色作为异或模式设定的绘图颜色。如果当时背景色为红色,并用红色绘制线段,则线段的实际颜色是_。18.程序员用Java语言编写多线程应用程序,程序员能控制的关键性工作有两个方面:一是编写线程的_方法;二是建立线程实例。19.BufferedWriter类是提供缓冲式输出的类。程序需要先创建_对象,再利用这个对象创建BufferedWriter对象。20.在Java语言中,客户端使用的套接字类是_。三、简答题(本大题共6小题,每小题3分,共18分)21.请写出表示条件“x

10、=2与y=3有且只有一个成立”的Java表达式”。22.如果类Student是类Person的子类,类Undergraduate是类Student的子类,请指出以下代码行中哪些是不合法的。Person p1=new Student();Person p2=new Undergraduate();Student s1=new Person();Student s2=new Undergraduate();Undergraduate ug1=new Person();Undergraduate ug2=new Student();Object ob=new Student();23.请写出程序处理

11、文本框输入结束事件(回车)添加监视器的方法,以及监视器类必须实现的接口方法。24.请写出一条语句,能够绘制一条从点(20,30)开始,长为100像素的水平线段。设调用的对象是类型为Graphics的g。25.某Java程序要使用文件输入输出流,请写出该程序所需要的import语句。26.JDBC是Java程序与数据库连接的API,请写出JDBC能做的三件事情。四、程序填空题(本大题共5小题,每空2分,共20分)27.方法int maxDigit(int n)的功能是找出十进制整数n各位中最大的一位数字。例如,n=23765,该方法的返回值是7。static int maxDigit(int n

12、)int c=0,d;while(n0)d=_;if(dc) c=d;n/=10;_;28.某程序的界面包含一个文本区text1、一个文本框text2和一个按钮button。实现在文本区中输入整数序列后,点击按钮,程序响应按钮事件,累计文本区输入的整数序列,并将总和输出在文本框中。这里给出的是其中相应按钮事件的方法。public void actionPerformed(ActionEvent e)int sum;if(e.getSource()=button)String s=text1._;/获取text1中的信息StringTokenizer fenxi=new StringTokeni

13、zer(s,n);int n=fenxi.countTokens();double a=new doublen;for(int i=0;in;i+)String temp=fenxi.nextToken();ai=Double.valueOf(temp).doubleValue();sum=0;for(int i=0;in;i+)_;text2.setText(+sum);/刷新显示。29.以下是生成菜单项对象,以及菜单项选择事件处理方法的部分代码。要求当菜单项singingItem被选中时,在文本框text中输出“唱歌菜单项被选中!”的字样。singingItem=new_(唱歌);/生成菜

14、单项对象public void actionPerformed(ActionEvent e)if(e.getSource()=singingItem)text.setText(e._()+ 菜单项被选中!);30.某小应用程序实现幻灯片放映。小应用程序的init()方法将幻灯片读入数组中存储和注册鼠标监视器。程序运行时,单击鼠标,就顺序变换放映幻灯片的序号。这里给出的是其中的paint()方法和mousePressed()方法。final int number=30;/假定幻灯片有30张int count=0;Imagepic=new Imagenumber;public void paint

15、(_gc)if(piccount)!=null)gc.drawImage(piccount,10,10,piccount.getWidth(this),piccount.getHeight(this),this);public void mousePressed(MouseEvent e)count=(count+1)% number;/循环逐张显示_;31.以下定义的类shareDataManager用于管理多个线程共享数据data。一些线程要减少data,另一些线程要增加data。由于data不可以是负值,修改data的方法对这些线程来说不仅要互斥,还要同步。类提供一个方法modiData

16、()供修改data的线程调用,该方法在data修改结束后,应通知其它等待进入这个方法的线程。class ShareDataManagerint data=0;_void modiData(int delta)if(delta=0)data+=delta;else while(data delta)trySystem.out.println(发生等待!);wait();catch(InterruptedException e) data-=delta;_;ShareDataManager(int ititData)data=initData;五、程序分析题(本大题共5小题,每小题4分,共20分)

17、32.阅读下列程序,请写出该程序的输出结果。import java.applet.*;import java.awt.*;class Pointint x,y;Point(int xx,int yy) x=xx;y=yy;Point(Point p)x=p.x;y=p.y; void m(int dx,int dy)x+=dx;y+=dy;class Circle extends Pointint r;Circle(Point p, int rr) super(p); r=rr; float c() return 3.14f*2.0f*r; float a() return 3.14f*r*r

18、;public class sample extends AppletCircle yuan; Point d;public void init() d=new Point(2,5);yuan=new Circle(d,10);public void paint(Graphics g)g.drawString(yuan Circle+(int)(yuan.c()*100.0)/100.0,5,20);g.drawString(yuan Area+(int)(yuan.a()*100.0)/100.0,5,40);33阅读下列程序,请写出该程序的功能。import java. util.*;pu

19、blic class Class1public static void main(Srting args)Date date1=new Date();System. out. println (datel);String t=datel.toString();int endPos=t.indexOf(C);t=t.substring(11,endPos);System. out println(t);34.阅读下列程序,请写出该程序的功能。import java.applet.*;import javax.swing.*;import java.awt.event.*;public class

20、 Class l extends Applet implements ActionListenerJTextField text1,text2;public void init()text1=new JTextField(10); text2=new JTextField(10);setSize(200,100); add(text1); add(text2);text1.addActionListener(this);public void actionPerformed(Action Event e)long n;if(e.getSource()=text1)n=Long.parseLon

21、g(text1.getText();text2.setText(String.valueOf(n*n);35.阅读以下程序,请写出该程序的功能。import javax.swing.*; import java.awt.*;import java.awt.event.*;class MyScrollBar extends JscrollBarpublic MyScrollBar(int init, int len, int low, int high)super(JScrollBar. HORIZONTAL, init,len,low,high);class MyWindow extends

22、JFrame implements AdjustmentListenerprivate JTextField text;MyWindow(String s)super(s);MyScrollBar myBar=new MyScrollBar(10,10,0,255);Container con=this. getContentPane();con. setLayout(new GridLayout(2,1);this. setSize(200,100);this. setLocation(100,100);myBar.addAdjustmentListener(this);text=new J

23、TextField(,20);con. add(text);con.add(myBar);this.setVisible(true);public void adjustmentValueChanged(AdjustmentEvent e)MyScrollBar myBar=(MyScrollBar)e.getAdjustable();text.setText(+myBar.getValue();public class Class1public static void main(Stringargs)MyWindow myWindow=new MyWindow(text5_4);36.小应用

24、程序创建一个线程。例子使用容器类方法getGraphics()获得Graphics对象,给线程作为画笔使用。请写出该程序中这个线程的工作内容。import java.applet.*;import java.awt.*;public class Class1 extends java.applet.Applet implements RunnableThread redBall;Graphics redPen;int rx=0,ry=0;public void init()setSize(250,200);redBall =new Thread(this);redPen=getGraphics

25、();redPen. setColor(Color.red);setBackground(Color.gray);public void start() redBall.start(); public void run()while(true)if(Thread.currentThread()=redBall)rx=(int)(80*Math.random();ry=(int)(80*Math.random();red Pen.setColor(Color.red);red Pen.fillOval(100+rx,100+ry,10,10);tryredBall.sleep(500);catc

26、h(InterruptedException e)redPen.setColor(Color.gray);redPen.fillOval(100+rx,100+ry,10,10);六、程序设计题(本大题共2小题,每小题6分,共12分)37编写一个方法halfArray(),要求该方法有一个元素类型为int的数组参数,方法返回一个新数组,新数组的长度与参数数组的长度相同,而新数组元素的值是参数数组各元素的一半。38一个Java小应用程序,界面有三个文本框和两个按钮,前两个文本框用于输入整数,第三个文本框用于输出结果。两个按钮分别表示加和减运算。当前两个文本框输入整数后,点击相应按钮,程序就将计算

27、结果输出在第三个文本框中。以下是程序的大部分,其中监视按钮事件的方法未给出,试编写处理按钮事件的方法。注:这里是给定部分的程序,你要编写的是actionPerformed(ActionEvent e)方法。import java.applet.*;import javax.swing.*;import java.awt.*; import java.awt.event.*;class Panel1 extends JPanelJTextField text1, text2, text3;JButton addButton,subButton;Panel1()text1=new JTextFie

28、ld(10);text2=new JTextField(10);text3=new JTextField(10);setLayout(new GridLayout(5,1);addButton=new JButton(加);subButton=new JButton(减);add(text1); add(text2);add(text3); add(addButton); add(subButton);public class Classl extends Applet implements ActionListenerPane1 panel;public void init()setSize

29、(100,200); panel=new Panel1();add(panel);(panel.addButton).addActionListener(this);(panel.subButton). addActionListener(this);public void actionPerformed(ActionEvent e)/这里是你要编写的代码全国2009年1月Java语言程序设计(一)试题课程代码:04747一、单项选择题(本大题共10小题,每小题1分,共10分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。1.下列字符

30、组合不能作为Java整型常量的是( )A.078B.0x3ACBC.5000D.0x3ABC2.以下程序代码的输出结果是( ) int x = 10; while (x > 7) System.out.print("*"); x-;A.*B.*C.*D.*3.设类U声明,及对象u和v的定义如下:class U int x, int y; U(int a, int b)x= a; y = b; void copy(U a) x = a.x; y = a.y;U u = new U(1, 2), v = new U(2, 3);在以下供选择的代码中,可能引起系统回收内存的

31、是( )A.u.x=v.y;u.y=v.x;B.u=v;C.u.copy(v);D.v.copy(u);4.设有以下代码: String s l="123"; String s2="123"; String s3=new String("123");则表达式s1=s2和s1=s3的值分别是( )A.true,trueB.false,falseC.true,falseD.false,true5.以下关于AWT与Swing之间关系的叙述,正确的是( )A.Swing是AWT的提高和扩展B.在写GUI程序时,AWT和Swing不能同时使用C

32、.AWT和Swing在不同的平台上都有相同的表示D.AWT中的类是从Swing继承的6.在以下Swing组件中,能为它指定布局管理器的是( )A.JScrollBar对象B.JMenuBar对象C.JComboBox对象D.JDialog对象7.一般的绘图程序要定义一个JPanel子类。在JPanel子类中还要重定义一个方法,在这个方法中调用绘图方法,绘制各种图形。要重定义的方法是( )A.paint()B.paintComponent()C.repaint()D.update()8.用Runnable接口实现多线程的主要工作是( )A.声明实现Runnable接口的类,在类内实现run()方

33、法,让线程调用start()方法。B.声明实现Runnable接口的类,在类内实现run()方法,在类内声明线程对象,在init()方法中创建新线程,启动新线程。C.声明实现Runnable接口的类,在类内实现run()方法,在类内声明线程对象,在Init()方法或start()方法中创建新线程,在start()方法中启动新线程。D.声明实现Runnable接口的类,在类内实现run()方法,在init()方法中创建新线程,在start()方法中启动新线程。9.程序如果要按行输入输出文件的字符流,最合理的方法是采用( )A.BufferedReader类和BufferedWriter类B.In

34、putStream类和OutputStream类C.FileReader类和FileWriter类D.File_Reader类和File_Writer类10.在编写访问数据库的Java程序中,要用到DriverManager类。该类的作用是( )A.存储查询结果B.处理与数据库的连接C.在指定的连接中处理SQL语句D.处理驱动程序的加载和建立数据库连接二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。错填、不填均无分。11.Java程序的字节码文件的扩展名是_。12.构造一个Java表达式:yx>5,并且x!=0。这个表达式是_。13.在类声明之前用_修

35、饰,声明类是不能被再继承的类,即它不能再有子类。14.设有字符串定义:String s="ABCDABCD";则表达式s.indexOf("B")的值是_。15.在实现接口ActionListener的方法actionPerformed()中,常用的有两个获得事件源的方法,它们是getActionCommand()和_。16.使用单选按钮的方法是将一些单选按钮用_对象分组,使同一组内的单选按钮只允许一个被选中。17.在Java语言中,用类Font对象设置字型。如果要设置的字型是:细明体、正常风格(Font.PLAIN),12磅字号,构造这样要求的Font

36、对象fnA的代码是_。18.线程从阻塞状态恢复到就绪状态,有三种途径:自动恢复、用resume()方法恢复和用_方法恢复。19.为普通的8位字节流文件读和写操作提供支持的类是_。20.Connection类是java.sql包中用于处理与数据库连接的类。Connection对象是用来表示_的对象,Java程序对数据库的操作都在这种对象上进行。三、简答题(本大题共6小题,每小题3分,共18分)21.请写出表示year年是闰年的Java表达式。闰年的条件是:每4年一个闰年,但每100年少一个闰年,每400年又增加一个闰年。22.请写出在类的方法的定义之前,加上修饰字public、private的区

37、别。23.请写出将文本区text放置于滚动面板jsp,并将滚动面板jsp添加到JFrame窗口myFrame的Java语句。24.要用Graphics2D类的方法画一个图形,首先要把参数对象g强制转换成Graphics2D对象;然后,用图形类提供的静态方法Double()创建一个图形对象;最后,以图形对象为参数调用Graphics2D对象的draw()方法绘制这个图形。请写出用这样的方法绘制一条线段的程序段,线段的两个端点分别是(10.0,10.0)和(30.0,30.0)。25.请写出字符流数据与字节流数据的区别。26.请写出URLConnection类在编写Java网络应用程序中的作用。四

38、、程序填空题(本大题共5小题,每小题4分,共20分)27.方法int sigmaDigit(int n)的功能是求出十进制整数n的各位数字之和。例如,n=1234,该方法的返回值是10。 static int sigmaDigit( int n ) int sum = 0, d; while( n > 0 ) d=n% 10; _; n/= 10;_;28.以下小应用程序能响应鼠标按动的事件,当鼠标在正文区的某个位置被点击时,就在该位置显示一个记号“×”,程序限制最多保留最新20个位置。import java.applet.*; import java.awt.*;import

39、 javax.swing.*; import java.awt.event.*;class MyPanel extends JPanel public void print(Graphics g, int x, int y)( g.setColor(Color.red); g.drawLine(x-5, y-5, x+5, y+5); g.drawLine(x+5, y-5, x-5, y+5);class MyWindow extends JFrame implements MouseListener final int MaxMarks = 20; int currentMarks = 0

40、, markCount = 0; Point marks = new PointMaxMarks; MyPanel panel; MyWindow() this.setLocation(100, 100); this.setSize(300, 300); Container con = this.getContentPane(); panel = new MyPanel(); con.add(panel); _(this); this.setVisible(true); public void paint(Graphics g) int i; g.clearRect(0,0, this.get

41、Width(), this.getHeight(); for(i =0;i < markCount; i+) _(g, marksi.x, marksi.y); public void mousePressed(MouseEvent e) public void mouseReleased(MouseEvent e) public void mouseEntered(MouseEvent e) public void mouseExited(MouseEvent e) public void mouseClicked(MouseEvent e) markscurrentMarks = n

42、ew Point(e.getX(), e.getY(); if(markCount < MaxMarks)markCount+; currentMarks = (currentMarks+ 1)%MaxMarks; repaint();public class Class1 extends Applet public void init() MyWindow myWndow = new MyWindow(); 29.这是一个处理选择项目事件的子窗口类。窗口中有2个选择框,当选中某个选择框时,文本框将显示选择框对应的信息。class MyWindow extends JFrame impl

43、ements ItemListener JTextField text; JCheckBox boxl, box2; MyWindow(String s) _; Container con = this.getContentPane(); this.setLocation(100, 100); this.setSize(400, 200); text = new JTextField(10); box1 = new JCheckBox("A计算机", false); box2 = new JCheckBox("B计算机", false); con.set

44、Layout(new GridLayout(3, 2); con.add( new JLabel("计算机产品介绍", JLabel.CENTER); add(new JLabel("计算机2选1", JLabel.CENTER); con.add(box1); con.add(box2); con.add(text); box1 .addItemListener(this); box2.addItemListener(this); this.setVisible(true); this.pack(); public void itemStateChan

45、ged( _e) if(e.getItemSelectable() = box1) text. setText("A公司生产"); else if(e.getItemSelectable() = box2) text. setText("B公司生产"); 30.这是一个播放幻灯片的小应用程序中的paint()方法。设幻灯片已由小应用程序的init()方法装入内存,并存放于myImage数组中,幻灯片的张数放于变量num中,paint()方法要播放的幻灯片号是currentImage。int currentImage = 0;final int num =

46、 30;Image myImage = new _ num;public void paint(Graphics g) if (mylmagecurrentImage) != null) g. _ (myImagecurrentImage, 10, 10, myImage currentImage.getWidth(this), myImage currentImage.getHeight(this), this);31.以下定义的类ShareData用于管理多个线程共享数据val。为了保证对共享数据val修改的完整性,线程对val的操作需要互斥,类ShareData中定义的方法modiDat

47、a()就是供共享val的线程修改val的方法。程序共有20个线程共享val,有些减少val,有些增加val。public class Class1 public static void main(String args) ShareData mrc = new ShareData(50); Thread aThreadArray = new Thread20; System.out.println("t刚开始的值是:"+mrc.getVal(); System.out.println("t多个线程正在工作,请稍等!"); for(int i = 0; i

48、 < 20; i+) int d = i % 2 = 0 ? 50 : -30; aThreadArrayi = new Thread(new MyMultiThreadClass(mrc, d); aThreadArrayi.start(); WhileLoop :/等待所有线程结束 while(true) for(int i = 0; i < 20; i+) if(aThreadArrayi. _ ()continue WhileLoop; break; System.out.println("t最后的结果是: "+mrc.getVal(); class M

49、yMultiThreadClass implements Runnable ShareData UseInteger; int delta; MyMultiThreadClass(ShareData mrc, int d) UseInteger = mrc; delta = d; public void run() for(int i = 0; i < 1000; i+) UseInteger.modiData(delta); try Thread.sleep(10) ;/做一些其他的处理 catch(InterruptedException e) class ShareData int

50、 val; ShareData(int initValue)val = initValue; int getVal()return val; private void putVal(int v)val = v; _ void modiData(int d) putVal(getVal() + d);五、程序分析题(本大题共5小题,每小题4分,共20分)32.阅读下列程序,请写出该程序的输出结果。class A int x, y; A(int a, int b) x= a; y= b; public class sample public static void main(String args

51、) A pl, p2; p2 = new A(12, 15); p1 = p2; p2.x+; System.out.println("p1.x=" + p1 .x); 33.阅读下列程序,请写出调用pascal(4)的输出结果。static void pascal(int n) int pas; pas = new intn; pas0 = 1; System.out.println(pas0); for (int i = 2; i <= n; i+) /* 由存储在pas中的原来内容生成新内容*/ pasi - l =1; for (int j = i- 2;j > 0; j-) pasj = pasj + pasj - 1 ; for (int j = 0; j < i; j+) System.out.print(pasj +" "); System.out.println(); 34.阅读下列程序,请用示意图画出程序运行时呈现的界面。import java.applet.*;import java.awt *;import javax.swing.*;class MyPanel extends

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论