全国自考历届Java语言程序设计(一)真题及答案 - 图文(3)

2018-12-29 21:34

......

[解析]本题考核知识点是绘图模式。

当绘图模式设置为异或模式时,用背景色绘图出现的是异或的颜色,重画一个图形将清除图形。

试题内容:某个绘图方法设置成\异或模式\绘图,并用黄色作为异或模式设定的绘图颜色。如果当时背景色为

红色,并用红色绘制线段,则线段的实际颜色是_____。 8:参考答案:(P161)run()

[解析]本题考核知识点是多线程。

Java程序实现多线程应用有两种途径:一是继承Thread类声明Thread子类,用Thread子类创建线程对象。二

是在类中实现Runnable接口,在类中提供Runnable接口的run()方法。无论用哪种方法,都需要Java基础类库中的Thread类及其方法的支持。程序员能控制的关键性工作只有两个方面,一是编写线程的run()方法;二是建立线程实例。

试题内容:程序员用Java语言编写多线程应用程序,程序员能控制的关键性工作有两个方面:一是编写线程

的_____方法;二是建立线程实例。 9:参考答案:(P179)FileWriter

[解析]本题考核知识点是缓冲式输出。

实现缓冲式输出,需要将FileWriter对象接到BufferedWriter对象上,对BufferedWriter对象使用write()方法就

能实现缓冲式输出。

试题内容:BufferedWriter类是提供缓冲式输出的类。程序需要先创建_____对象,再利用这个对象创建BufferedWriter对象。 10:参考答案:(P193)Socket

[解析]本题考核知识点是Java网络编程。

Java语言在实现C/S模式中,套接字分为两类,在Server端使用ServerSocker类,在Client端使用Socket类。

试题内容:在Java语言中,客户端使用的套接字类是_____。 三、简答题 (本大题共6小题,每小题3分,共18分)

1:参考答案:(P15)(x=2)!=(y=3)或(x=2&&y!=3)||(x!=2&&y!=3)我的答案: 2:参考答案:(P57)Student s1=new Person(); Undergraduate ug1=new Person(); Undergraduate ug2=new Student();

[解析]本题考核知识点是类之间的is-a关系。在两个相关的类之间,可能会有is-a和has-a关系。若类A是

继承扩展类B,则子类A和超类B之间是is-a关系,即类A是一个类B。这种情况下,A类对象一定可以是B类类型,因为B类的所有成员A类也有。也就是子类对象可以是超类类型。语句B b=new A()是正确的,A a=new B()是错误的。

......

3:参考答案:(P102)为对象添加监视器的方法是addActionListener;类必须实现的方法是public void actionPerformed(ActionEvent e)。

[解析]本题考核知识点是文本框输入结束动作事件(回车)。

文本框输入结束动作事件相应的监视器接口为ActionListener,要实现的接口方法是actionPerformed(),添加监

视器的方法是addActoinListener()。

4:参考答案:(P140)g.drawLine(20,30,120,30);或g.drawLine(120,30,20,30); [解析]本题考核知识点是画线段。

方法中有四个参数分别表示线段的两个端点坐标,当两个端点坐标相同时,将画出一个点,而不再是线段。 5:参考答案:(P175)import java.io.*;

[解析]本题考核知识点是文件输入输出流。

实现输入输出操作的类库在java.io包中。包中有一组支持打开流、向流写数据、从流读取数据和关闭流等操作

的类,要使用这些类,程序必须导入java.io包。

6:参考答案:(P199)与某个数据库建立连接;向数据库发送SQL语句;处理数据库返回的结果。 [解析]本题考核知识点是java数据库编程基础。

Java数据库连接JDBC由一组用Java语言编写的类和接口组成,JDBC是Java程序与数据库连接的API。它可以做三件事情。 四、程序填空题

(本大题共5小题,每空2分,共20分) 1:参考答案:n return c

[解析]本题考核知识点是%运算符和return语句。

方法中d为循环分离出整数n的每一位数字(每次取n的个位数字,n也在变化:n/=10),在找出最大的数字

后存入了变量c中,因方法有返回值类型为int,所以必须有return语句,要返回最大数字。, 2:参考答案:getText()

sum+=a[i]或sum=sum+a[i]

[解析]本题考核知识点是图形界面设计中按钮事件方法的编写。

获取文本框中的内容使用的方法是getText(),方法名首字母均小写,后面单词首字母大写。获取整数序列后,

使用单词分析器分解出每个整数(有类型转换过程)存入数组a中,然后对所有整数进行求和。, 3:参考答案:JMenuItem getActionCommand

[解析]本题考核知识点是菜单。

......

生成菜单条是用类JMenuBar的构造方法JMenuBar(),把菜单条放入JFrame窗口中用setJMenuBar()方法;生

成菜单用类JMenu的构造方法JMenu()或JMenu(String

s);生成菜单项用类JMenuItem的构造方法JMenuItem()或JMenuItem(String s)。在菜单事件中获得事件源的

方法是getSource(),获得事件源文字信息的方法是getActionCommand()。 4:参考答案:Graphics

repaint()或update()

[解析]本题考核知识点是小应用程序中paint()和repaint()方法的使用。

paint()方法需要Graphics类型参数,当单击鼠标时,要在paint()方法中再次显示图片,可以调用repaint()方法,

使程序先清除paint()运行的结果,再运行paint();也可以调用update()方法,该方法会使系统自动调用repaint()方法。

5:参考答案:synchronized notify()

[解析]本题考核知识点是线程的互斥和同步。

在Java语言中,使用关键字synchronized定义临界段,能对共享对象的操作上锁,使得某一时刻只允许一个线

程使用这个共享对象。但是为了同步,可在临界段中使用wait()、notify()和notifyAll()方法。wait()让线程一直等待,notify()方法通知第一个处于等待的线程结束等待。notifyAll()方法使所有处于等待的线程都结束等待,重新竞争CPU。

五、程序分析题 (本大题共5小题,每小题4分,共20分) 1:参考答案:yuan Circle 62.8(2分) yuan Area 314.0(2分)我的答案:

2:参考答案:程序获得当前日期,将日期的字符串表示输出;(2分)截取日期字符串中从第11位开始到字母

‘C’之前的部分字符串,并输出。(2分) 3:参考答案:

在第一个文本框输入数据,输入结束(回车)后,(2分)在第二个文本框输出该整数的平方。(2分) 4:参考答案:

滑动滚动条的滑块,在文本框显示块位置对应的数值。

5:参考答案:随机位置显示一个小圆,程序采用背景色重画的办法,清除前一次显示的小圆。 [解析]本题考核知识点是图形绘制和线程综合应用。

在run()方法中随机产生一个坐标点,以此为左上角坐标,红色填充一个小圆形区域,500毫秒后,用背景色填

充同一个小圆形区域,使红色小圆形区域消失,马上又随机产生一个坐标点,再红色填充,再消失,循环不止。我的答案:

......

六、程序设计题 (本大题共2小题,每小题6分,共12分) 1:参考答案:int [] halfArray(int [] a){(1分) int [] b=new int[a.length];(2分) for(int k=0;k<a.length;k++){(2分) b[k]=a[k]/2; }

return b;(1分) }

[解析]本题考核知识点是面向对象程序设计中的方法设计。

编写方法,需要确定方法名,已给出halfArray;再确定参数个数及类型,要求是一个int型数组参数即halfArray(int

[]);再就是确定方法返回值类型,要求返回一个新数组,新数组元素类型要确定下来,根据题意,新数组

元素是参数数组相应元素的一半,这一半应该可能是小数,所以方法头应该为float[]halfArray(int [])而不应该是int [] halfAray(int

[]),方法体中的一半也应该是除以2.0。并转换成float类型,方法体定义的数组b也应该是float类型。或

者返回值类型和数组b的类型都定义成double类型。

2:参考答案:long n1,n2;(1分)

if(e.getSource()=(panel.addButton)){(3分) n1=Long.parseLong(panel.text1.getText()); n2=Long.parseLong(Panel.text2.getText()); panel.text3.setText(String.valueOf(n1+n2)); }

else if(e.getSource()=(panel.subButton)){(2分) n1=Long.parseLong(panel.text1.getText()); n2=Long.parseLong(panel.text2.getText()); panel.text3.setText(String.valueOf(n1-n2)); }

注:将panel.text1写成text1,panel.text2写成text2整体扣1分。

[解析]本题考核知识点是图形界面设计、JPanel、JTextField、JButton及其事件的处理。

在方法体中的代码类似于34小题。容器的嵌套不要忽略了。

......

全国2009年1月Java语言程序设计(一)试题

课程代码:04747

一、单项选择题(本大题共10小题,每小题1分,共10分)

在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。

1.下列字符组合不能作为Java整型常量的是( ) A.078

B.0x3ACB

C.5000 D.0x3ABC

2.以下程序代码的输出结果是( ) 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);

在以下供选择的代码中,可能引起系统回收内存的是( A.u.x=v.y;u.y=v.x; B.u=v; C.u.copy(v); D.v.copy(u); 4.设有以下代码: String s l=\; String s2=\;

String s3=new String(\;

)


全国自考历届Java语言程序设计(一)真题及答案 - 图文(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:江西省步步高门店配送中心选址研究

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: