整专业资料
微信QQ群
考生网QQ群

群号:517231281

扫码加群
点击二维码加群

考生网微信公众号

微信号:zikaosw

课程试听
最新资讯

手机端访问

1、直接输入www.zikaosw.cn
2、扫描左侧二维码

登录 | 注册
登录/注册后,可享受
  • 课程免费试听
  • 试做在线题库
  • 学习提升指导
自考生网
当前位置 自学考试 > 自考模拟试题 > Java语言程序设计(一)自考模拟试题 > 文章详情

2020年04747Java语言程序设计(一)模拟试题(3)

来源:自考生网 时间:2020-02-07 11:41:21 编辑:紫薇

自考生网为考生收集整理了“2020年04747Java语言程序设计(一)模拟试题(3)”。

注:不同省份、不同专业的自考本科模拟试题,只要课程代码和课程名称相同,都可参考使用。

更多自考04747Java语言程序设计(一)模拟试题可查看“自考04747Java语言程序设计(一)试题”栏目。

点击查看:04747Java语言程序设计(一)模拟试题答案

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

第1题按运算符操作数的数目划分,运算符?:的类型是()

A.三目

B.双目

C.四目

D.单目

第2题当启动Applet程序时,首先调用的方法是()

A.stop()

B.init()

C.start()

D.destroy()

第3题下面有关临界段叙述错误的是()

A.多线程互斥使用共享资源的程序段被称为临界段

B.临界段是一种加锁机制,与多线程共享资源有关

C.临界段的作用是在任何时该一个共享资源只能供一个线程使用

D.如果一个线程已进入某个共享资源的临界段,且还没有使用结束,其他进程可抢占这个共享的资源

第4题在Java语言中,密码框组件和设置密码框的回显字符为“*”的方法分别是()

A.JPassWordField和setEchoChar(?*?)

B.JPasswordField和setEchoChar(?*?)

C.JPassWordField和setEchochar(?*?)

D.JPasswordField和setEchochar(?*?)

第5题列表事件的事件源有两种,其中之一是单击列表中的选项,则与单击选项事件相关的接口是()

A.ActionListener

B.ListSelectionEvent

C.ListSelectionListener

D.addListSelectionListener

第6题以下程序代码的输出结果是()

int x=100;

System.out.println("5.5"+x%8);

A.5.512

B.5.512.5

C.18

D.5.54

第7题定义一个使用接口Java.lang.Runnable的类,必须要实现的方法是()

A.start()

B.run()

C.init()

D.paint()

第8题在Java中,线程的调度策略采用()

A.分时式

B.抢占式

C.非分时式

D.非抢占式

第9题下列有关抽象类及抽象方法的叙述错误的是()

A.使用final修饰的类是抽象类

B.使用abstract修饰的方法是抽象方法

C.抽象类必须被继承才能使用,抽象类不可能有实例

D.抽象类可以没有抽象方法,但有抽象方法的类一定是抽象类

第10题采用缓冲式输出时,如果又想立即写入到文件,则需要调用的方法是()

A.flash()

B.flush()

C.write()

D.read()

二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。错填、不填均无分。

第1题使用ResultSet对象的___方法可将数据表游针移到插入位置,输入数据后,用方法insertRow()插入记录。

第2题闰年的条件是:每4年一个闰年,但每100年少一个闰年,每400年又增加一个闰年。如果年份用整数类型变量y表示,则y年是闰年的条件用逻辑表达式可描述为___。

第3题___布局是把容器划分成若干行和列的网格状,行数和列数由程序控制,组件放在网格的小格子中。

第4题在Java程序中,设置文本区对象textA能自动换行的方法是:___。

第5题列表的选择模型有单选和多选两种,设置列表选择模型的方法是___。

第6题在Java语言,使用关键字定___义临界段,能对共享对象的操作上锁。

第7题Java语言中,逻辑类型用关键字___标识,也称布尔类型。

第8题在Java语言中,一个对象通过调用___方法可以获得该对象的字符串表示。

第9题在Java语言中,定义一个接口,在接口名前面需要___关键字。

第10题Java语言在实现C/S模式中,套接字分为两类,其中在Server端,___类支持底层的网络通信。

三、程序填空题(本大题共5小题,每空2分,共20分)

第1题以下是生成单选按钮对象,以及单选按钮选择事件处理方法的代码。要求当选中computer单选按钮时,在标签label中显示“计算机性能和价格介绍:”的字样。

…………

computer=new___("计算机");//生成单选按钮对象

computer.addItemListener(this);

…………

public void___(ItemEvent e)

{

if(e.getItemSelectable()==computer)

{

label.setText(computer.getLabel()+"性能和价格介绍:");

}

}

第2题下面小应用程序通过快速显示一组图片(1.jpg~9.jpg)造成显示动画的效果。

import java.awt.*;

import java.applet.*;

public class Class3002 extends Applet implements Runnable

{

final int number=9;

int count=1;

Image[]pic=new Image[number];

Thread myThread;

public void init()

{

setSize(300,200);

for(int i=1;i<=number;i++)

pic[i-1]=___;

}

public void start()

{

myThread=new Thread(this);

myThread.start();

}

public void stop(){myThread=null;}

public void run()

{

while(true)

{

repaint();

count=(count+1)%number;

try{myThread.sleep(1000);}

catch(InterruptedException e){}

}

}

public void paint(Graphics g)

{

if(pic[count]!=null)

g.___(pic[count],10,10,200,200,this);

}

}

drawImage"/>

第3题下面是一个求:1/1+1/2+2/3+3/5+5/8+8/13+13/21+21/32…前20项的和的程序段

float a=1,b=1,s=0;

for(int k=1;k<=10;k++)

{

s=s+a/b;

a=___

s=s+b/a;

b=___

}

System.out.println(s);

第4题以下程序产生一个确认对话框。

import javax.swing.*;

public class Class2905

{

public static void main(String[]args)

{

JFrame myWin=new JFrame();

myWin.setBounds(100,100,200,300);

myWin.setVisible(true);

myWin.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

int resule=___.___(myWin,"确实要退出吗?","退出确认",0);

System.out.println(resule);

}

}

第5题下面应用程序,绘制一个红色五角星。请完成程序。

import java.awt.*;

import javax.swing.*;

class MyPanel extends JPanel

{

public void___

{

int r=100;

int x1=100,

x2=(int)(r*(1-Math.cos((18*Math.PI)/180))),

x3=(int)(r*(1+Math.cos((18*Math.PI)/180))),

x4=(int)(r*(1-Math.cos((54*Math.PI)/180))),

x5=(int)(r*(1+Math.cos((54*Math.PI)/180))),

y1=0,

y2=(int)(r*(1-Math.sin((18*Math.PI)/180))),

y3=(int)(r*(1-Math.sin((18*Math.PI)/180))),

y4=(int)(r*(1+Math.sin((54*Math.PI)/180))),

y5=(int)(r*(1+Math.sin((54*Math.PI)/180)));

___

g.drawOval(0,0,200,200);

g.drawLine(x4,y4,x1,y1);g.drawLine(x1,y1,x5,y5);

g.drawLine(x5,y5,x2,y2);g.drawLine(x2,y2,x3,y3);

g.drawLine(x3,y3,x4,y4);

}

}

public class C3002 extends JFrame

{

C3002()

{

super("C3002");

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

getContentPane().add(new MyPanel());

setSize(210,242);

setVisible(true);

}

public static void main(String[]args)

{

new C3002();

}

}

四、程序分析题(本大题共5小题,每小题4分,共20分)

第1题阅读下面程序,写出程序功能及当输入6和9时的运行情况。

import java.awt.*;

import javax.swing.*;

import java.awt.event.*;

public class Class3402 implements ActionListener

{

JButton butt=new JButton("OK");

JTextField text1=new JTextField(10);

JTextField text2=new JTextField(10);

JTextField text3=new JTextField(10);

public Class3402()

{

JFrame myWin=new JFrame("Class3402");

myWin.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

Container con=myWin.getContentPane();

con.setLayout(new GridLayout(4,1));

con.add(text1);con.add(text2);

con.add(butt);con.add(text3);

butt.addActionListener(this);

myWin.pack();

myWin.setVisible(true);

}

public void actionPerformed(ActionEvent e)

{

int a=Integer.parseInt(text1.getText());

int b=Integer.parseInt(text2.getText());

int i;

for(i=1;i<=a*b;i++)

{

if(i%a==0&&i%b==0)break;

}

text3.setText(String.valueOf(i));

}

public static void main(String[]args)

{

new Class3402();

}

}

第2题阅读下面程序,写出程序功能。

import javax.swing.*;

import java.awt.event.*;

public class Class3502 implements ActionListener

{

JMenuItem item1;

JMenuItem item2;

JTextField text;

public Class3502()

{

JFrame myWin=new JFrame();

JMenuBar menubar=new JMenuBar();

JMenu menu=new JMenu("Graph");

item1=new JMenuItem("Circle");

item2=new JMenuItem("Rect");

text=new JTextField(20);

myWin.add(text);

myWin.setJMenuBar(menubar);

menubar.add(menu);

menu.add(item1);

menu.add(item2);

item1.addActionListener(this);

item2.addActionListener(this);

myWin.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

myWin.setBounds(100,100,200,200);

myWin.setVisible(true);

}

public void actionPerformed(ActionEvent e)

{

text.setText(e.getActionCommand());

}

public static void main(String[]args)

{

new Class3502();

}

}

第3题阅读下列程序,写出程序运行结果。

interface Computable

{

final int MAX=100;

int f(int x);

int g(int x,int y);

}

class Aa implements Computable

{

int no;

public int f(int x)

{

int sum=0;

for(int i=1;i<=x;i++)sum=sum+i;

return sum;

}

public int g(int x,int y){return x*y;}

}

class Bb implements Computable

{

int no;

public int f(int x)

{

int sum=0;

for(int i=1;i<=x;i++)sum=sum+i*i;

return sum;

}

public int g(int x,int y){return x+y;}

}

public class Class3204

{

public static void main(String[]args)

{

Aa li;Bb tom;

li=new Aa();li.no=851898;

tom=new Bb();tom.no=951899;

System.out.print("Li的编号"+li.no+","+li.MAX);

System.out.println(","+li.f(3)+","+li.g(3,4));

System.out.print("Tom的编号"+tom.no+","+tom.MAX);

System.out.print(","+tom.f(3)+","+tom.g(3,4));

}

}

第4题阅读下列程序,写出程序功能。

import javax.swing.*;

import java.awt.event.*;

public class Class3405 extends JFrame implements ActionListener

{

public JFrame mw1,mw2;

public Class3405()

{

JButton butt1=new JButton("我是一个按钮");

butt1.setActionCommand("b1");

JButton butt2=new JButton("我是另一个按钮");

butt2.setActionCommand("b2");

butt1.addActionListener(this);

butt2.addActionListener(this);

String name1="我的第一个窗口";

String name2="我的第二个窗口";

mw1=new JFrame(name1);mw1.setSize(500,500);

mw2=new JFrame(name2);mw2.setSize(300,300);

mw1.getContentPane().add(butt1);

mw2.getContentPane().add(butt2);

mw1.setVisible(true);mw2.setVisible(true);

}

public void actionPerformed(ActionEvent e)

{

boolean yesNo;

if(e.getActionCommand().equals("b1"))

{

yesNo=!mw2.isVisible();

mw2.setVisible(yesNo);

}

else

{

yesNo=!mw1.isVisible();

mw1.setVisible(yesNo);

}

}

public static void main(String[]args)

{

new Class3405();

}

}

第5题阅读下列程序,写出程序功能。

import java.awt.*;

import java.applet.*;

import javax.swing.*;

import java.awt.event.*;

public class C3402 extends Applet

{

static JFrame myWin;

static SetBG setbg=new SetBG();

static JButton button;

public void init()

{

myWin=new JFrame("C3402");

myWin.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

myWin.setBounds(100,200,300,400);

myWin.setLayout(new FlowLayout());

Container con=myWin.getContentPane();

con.setBackground(Color.red);

button=new JButton("OK");

button.addActionListener(setbg);

myWin.add(button);

myWin.setVisible(true);

}

}

class SetBG implements ActionListener

{

public void actionPerformed(ActionEvent e)

{

Container con=C3402.myWin.getContentPane();

if(con.getBackground()==Color.red)

con.setBackground(Color.green);

else

con.setBackground(Color.red);

}

}

五、程序设计题(本大题共2小题,每小题6分,共12分)

第1题编写编写一个方法array3701(),要求该方法有一个元素类型为int的数组参数,方法返回一个新数组,新数组的长度与参数数组的长度相同,而新数组元素的值和参数数组各元素的值首尾颠倒。

}

}

输出结果为:4321"/>

第2题设计一个应用程序窗口如下图所示,单击“加”或“减”按钮,将前两个文本框中的整数相加或相减后放入第三个文本框中。已给出部分代码,请完成程序。

import java.awt.*;

import javax.swing.*;

import java.awt.event.*;

public class Class3801 implements ActionListener

{

JTextField text1,text2,text3;

JButton addButton,subButton;

public static void main(String[]args)

{

new Class3801();

}

public Class3801()

{

text1=new JTextField(10);

text2=new JTextField(10);

text3=new JTextField(10);

addButton=new JButton("加");

subButton=new JButton("减");

JFrame myWin=new JFrame("Class3801");

Container con=myWin.getContentPane();

myWin.setSize(300,80);

con.setLayout(new GridLayout(1,5));

con.add(text1);con.add(text2);

con.add(addButton);con.add(subButton);

con.add(text3);

addButton.addActionListener(this);

subButton.addActionListener(this);

myWin.setVisible(true);

}

public void actionPerformed(ActionEvent e)

{

//这里是你要编写的代码

}

}

if(e.getSource()==subButton)text3.setText(a-b+"");"/>

六、简答题(本大题共6小题,每小题3分,共18分)

第1题请写出程序处理按钮单击事件时,与按钮动作事件相关的接口,注册监视器的方法及要实现的接口方法。

第2题Java语言在实现C/S模式中,套接字分为哪两类?

第3题请写一条语句,实现用预定的颜色填充一个突出显示的矩形色块,其中矩形左上角坐标为(200,100),右下角坐标为(400,500),调用的是类型为Graphics的g对象。

第4题用一个Java语句完成下面的要求:

将变量A.b和c中最大的数值赋值给变量d。

第5题java.awt.event包中用来检测并对事件做出反应的模型包括哪三个组成元素?

第6题使用Java语言进行数据库操作,删除数据表记录有哪三种方案?

以上“2020年04747Java语言程序设计(一)模拟试题(3)”内容由自考生网收集整理,以供参考。

温馨提示:本网站所提供的考试信息仅供考生参考,考试政策请以权威部门公布的正式信息为准。
更多优惠课程课程推荐
资料套餐 关闭