Java语言程序设计(一)自考2017年10月真题
摘要:本试卷为单选题型,填空题,程序填空题,程序分析题,程序设计等题型。
Java语言程序设计(一)自考2017年10月真题及答案解析
本试卷为单选题型,填空题,程序填空题,程序分析题,程序设计等题型。
一、单项选择题在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。 (本大题共10小题,每小题1分,共10分)
1.编译Java应用程序源程序会产生字节码文件,字节码文件的扩展名为( )
A..java
B..class
C..html
D..exe
2.表达式-1>>1的值是( )
A.232-1
B.-1
C.216-1
D.2147483647
3.为类C定义一个int类型的变量x,使得只有同类和同包的其它类能使用代码.x就可引用它,则定义x的形式为( )
A.static int x;
B..public int x;
C.protected static int x;
D.public static int x;
4.设有字符串变量 String s1="abc", s2= new String("abc"),则以下表达式的值为true的是( )
A.s
1.compareTolgnoreCase(s2)
B.s
1.compareTo(s2)
C.s1==s2
D.s
1.equals(s2)
5.在以下Swing的类中,属于容器的是( )
A.JDialog
B.JButton
C.JTextArea
D.JList
6.在以下叙述中,属于CardLayout布局特点之一的是( )
A.多个组件从上到下排列
B.容器只能放置一个组件
C.容器被分成网格状
D.多个组件拥有同一个显示空间
7.Java组件可以使用抽象类Toolkit提供的静态方法获得一个缺省的Toolkit对象,这个静态方法是( )
A.getImage(String name)
B.getImage(URL url)
C.getDefaultToolkit( )
D.getToolkit( )
8.一个线程要从运行状态自动进入就绪状态,需要使用的方法是( )
A.notify( )
B.sleep ( )
C.yield( )
D.wait( )
9.程序将创建输入流的代码写在try-catch语句结构中,其目的是捕获并处理( )
A.文件太长异常
B.打开文件太多异常
C.文件找不到异常
D.文件含有病毒异常
10.在Java语言中,用来处理驱动程序的加载和建立新数据库连接的类是( )
A.DriverManager
B.Statement
C.Connection
D.ResultSet
二、填空题(本大题共10小题,每小题2分,共20分)
11.Java源文件中最多只能有一个________类,其他类的个数不限。
12.Java语言使用的字符集是________。
13.在Java语言中,package语句必须出现在源程序文件的________。
14.以下代码的输出结果是________。Integer x=234567;System.out.println(x.toString().substring(2,4));
15.在Java程序中,设置文本区对象myArea能自动换行的语句是________。
16.Java语言为处理鼠标事件提供了多个接口,其中能处理鼠标拖动和鼠标移动两种事件的接口是________。
17.Graphics2D类定义了多种图形的状态属性,其中用来控制线条的宽度、笔形样式、线段连接方式或短划线图案的属性是________。
18.当线程A使用某个对象,而此对象又需要线程B修改后才能符合A线程继续执行的要求,这时线程A就要等待线程B完成修改工作,这种线程相互等待称为________。
19.使用RandomAccessFile类的________方法可以向文件写入一个字符。
110.使用语句对象作数据库查询,能获得带游标的结果集集ResultSet对象,此对象中将游标移到最后一行之后的方法是________。
三、简答题(本大题共6小题,每小题3分,共18分)
21.请写出“条件x=2与y=3有且只有一个成立”的表达式。
22.以下代码定义了一个类,请用注释中的编号指出其中有错的代码行。class Test22{ int x; Test22(int x) {this.x=x;} //1 Test22(){Test22(10);} //2 int f(){ //3 int a=1; x=a; //4 } void g(){ int y; //5 y=a+x; //6 }}
23.请写出在java.awt.event中,用来检测并对事件做出反应的模型所包括的三种对象。
24.请写出在Java语言中,关键字synchronized的作用。
25.请写出采用缓冲式输入方式,按行输入文件内容的步骤。
26.已知服务器的IP地址为host,端口号为port,请写出为客户端建立到服务器的套接字对象mySocket的代码(可能发生的例外类型为IOException)。
四、程序填空题(本大题共5小题,每小题2分,共20分)
31.方法int countDigitNum(int []a,d)的功能是求已知数组a中元素值为d的个数。static int countDigitNum( int []a,d){ int s=0; for(int i=0;_______;i++){ if(__________)s++; } return s;}
32.面板子类MyPanel实现在面板上放置一个单选列表框,列表框上的选项条目由创建该类对象时的参数提供。当某个选项被单击时,类的监视程序在指定的文本框中输出选中选项条目。程序将单选列表框放置于滚动面板中,并要求滚动面板的垂直滚动条总是可见。以下是类MyPanel的定义。
33.面板子类MyPanel实现在面板监视鼠标单击事件,当鼠标在面板上单击时,面板的背景色就会循环改变。以下是类MyPanel的定义。
34.下面小应用程序启动后自动播放声音文件open.wav。
35.以下定义的类Godown用于管理多个线程共享产品库存量数据。类定义了让生产者线程和消费者线程共享的两个操作:生产produce(int pnum)和消费consume(int neednum)。限制生产操作和消费操作不能同时进行,也不能因生产(进库)让库存超过最大库存量maxSize,消费(出库)不能大于当前库存量cunum。为了保证生产和消费操作的完整和正确,这两个操作有互斥和同步要求。以下是管理产品库存量curnum类Godown的代码,其中消费方法consume()没有在以下代码中列出。
五、程序分析题(本大题共5小题,每小题4分,共20分)
41.阅读下列程序,请写出该程序的输出结果。
42.阅读下列程序,请写出该程序的输出结果。
43.阅读下列程序,请回答以下问题:(1)当拖动滚动条滑块时,程序界面有什么变化?(2)滚动条的最小值是多少?(3)能从滚动条获得的最大值是多少?
44.阅读下列程序,请回答以下问题:(1)程序运行时,在文本框中输入整数20,画出程序输出的图形(2)该图形的宽是多少像素?

45.阅读下列程序,请回答以下问题:(1)MyPanel用什么方法实现多线程?(2)程序如何实现显示的内容不断变化的?
六、程序设计题(本大题共2小题,每小题6分,共12分)
51.请编写方法 int searchMaxNumIndex(int []a),该方法的功能是返回已知数组中最大数的下标。int searchMaxNumIndex(int []a) { }
52.面板子类 MyPanel的对象为某应用程序构建如右图所示界面,
左边是4组带标签的文本框,用于输入参数:中间是带滚动条的文本区,用于输出解答:下面是一个启动找解的按钮。其中标签及文本框文字需要采用程序中对象int所定义的字型。
文本框、标签、文本区和按钮都是子类构造方法的参数(参见以下构造方法代码的首行)。
注:这里是给定程序的部分代码,你要编写的代码是完成按图所示的布局放置。
延伸阅读
- 考前自救指南:希赛自考题库快速提分
- 自考专属刷题工具,刷题即提分!
- 最后9天,自考历年真题应该怎么刷?
- 自考备考一站式服务:希赛自考题库APP
- 0基础逆袭秘籍:希赛全套自考学习包(含智能题库)
- 避开备考误区!用希赛自考APP快速提分!
自考微信公众号
扫码添加
自考备考资料免费领取
去领取
扫描二维码