江西理工大学java考试题型.doc_第1页
江西理工大学java考试题型.doc_第2页
江西理工大学java考试题型.doc_第3页
江西理工大学java考试题型.doc_第4页
江西理工大学java考试题型.doc_第5页
已阅读5页,还剩8页未读 继续免费阅读

付费下载

VIP免费下载

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

文档简介

一、 选择题(每题2分,共计40分)。1.在Java语言中,int类型数据的长度是( C )A.1个字节 B.2个字节C.4个字节 D.8个字节2.在switch语句中,switch后面括号内的表达式的类型不能是( B )A.byte B.longC.char D.int3.以下关于接口的叙述中,正确的是( D )A.所有的接口都是公共接口,可被所有的类和接口使用B.一个类通过使用关键字interface声明自己使用一个或多个接口C.接口中所有的变量都默认为public abstract属性D.接口体中不提供方法的实现4.以下代码段的输出结果是( A ) String s=JavaWorld; System.out.print(s.indexOf(a,4);A.-1B.OC.1D.45.以下不属于AWT库中定义的类是( A )A.ComponentB.ContainerC.Images D.Graphics6.鼠标单击列表中某个选项事件的相关接口是( B )A.ListActionListenerB.ListSelectionListenerC.ActionListenerD.SelectionListener7.Java语言规定,程序绘图区域的坐标原点位于整个区域的(A )A.左上角B.右上角C.左下角D.右下角8.以下关于线程互斥和同步的叙述中,正确的是( C )A.多线程互斥使用各自资源的程序段,在操作系统中称为临界段B.临界段的作用是使某线程能够使用其它线程的资源C.可以使用notify()方法通知等待线程结束等待D.线程的互斥和同步可以很好地解决死锁问题9.当用户关闭文件对话框时,有可能返回的整数常量是( B )A.JFileChooser.CLOSE_OPTIONB.JFileChooser.APPROVE_OPTIONC.JFileChooser.SAVE_OPTION D.JFileChooser.OPEN_OPTION10.获取InetAddress对象的域名所用到的方法是( D )A.getByName()B.getHostAddress()C.getLocalHost() D.getHostName()二、填空题(每空2分,共计30分)。1.Java源文件的扩展名是_.java_。2.表达式-4l的十进制值是_-2_。3.在定义成员变量时,用关键字_static_修饰的是类变量。4.布尔类型数组元素的默认初值是_false_。5.在Swing中,面板有两种,一种是JPanel,另一种是_JScrollPane_。6.对话框的默认布局是_BorderLayout_。7.Java语言的绘图模式有两种,它们是正常模式和_ 异或模式_。8.当线程处于新建状态后,调用了start()方法,该线程就处于_就绪_状态。9.如果要按行输入输出文件,需采用_缓冲式_输入输出方式。10.Java程序与数据库连接的API被称为_JDBC_。11.方法int numberOfDigits(int n)的功能是计算十进制正整数n的位数。 int numberOfDigits(int n) int c=0: do n=10;_n%=10_; while(_n!=0_); return c; 12.以下程序创建了一个窗口,窗口内设置一个按钮,单击该按钮,其标题会显示单击的次数。 import java.awt.*;import java.awt.event.*; import javax.swing.*; public class BottonGUI public static void main(Stringargs) CountButton myButtonGUI=new CountButton(); myButtonGUI.setVisible(true); class CountButton extends JFrame implements ActionListener public static final int Width=250; public static final int Height=200; public int i=0; JButton myBtn=new JButton(String.valueOf(i); CountButton() setSize(Width,Height); setTitle(计数按钮); Container conPane=getContentPane(); conPane.setLayout(new FlowLayout(); myBtn.addActionListener(this); conPane. setVisible(true)_add(myBtn)_; public void actionPerformed(ActionEvent e) if(e.getSource()=myBtn) myBtn. myButtonGUI _setText_(String.valueOf(+i); 13.以下小应用程序设置了一个文本区,用于显示鼠标单击的坐标。importjava.applet.*;importjava.awt.*;importjavax.swing.*;importjava.awt.event.*; class MyWindow extends JFrame implements MouseListener JTextArea text;JPanel panel;int x,y; MyWindow(String s)_surpe(s)_; Container con=this.getContentPane();con.setLayout(new GridLayout(2,1); this.setSize(200,300); panel=new JPanel(); con.add(panel); text=new JTextArea(10,20); con.add(text); addMouseListener(this); this.setVisible(true); public void paint(Graphics g)text.append(当前鼠标单击的位置是: +x+,+y+n); public void mousePressed(MouseEvent e) public void mouseReleased(MouseEvent e) public void mouseEntered(MouseEvent e) public void mouseExited(MouseEvent e) public void_mouseClicked_(MouseEvente)x=e.getX();y=e.getY();repaint(); public class MouseDemo extends Applet public void init() MyWindow myWndow=new MyWindow(鼠标演示程序); 14.以下小应用程序利用Graphics2D绘制一条直线。 import java.applet.*; import java.awt.*: import java.awt.geom.*; public class DrawLine extends Applet public void paint(Graphics g) Graphics2D g2d=( Graphics2D)g; Line2D line=new Line2D.Double(30.0,30.0,180.0,30.0); g2d.draw(line); 15.方法readByURL()的功能是已知网址,创建URL对象,设置网络连接,获取网址上的内容并显示。其中获取网址上的内容并显示的代码已被省略。 public void readByURL(String urlName) try URL url=new URL(urlName); URLConnection tc=url.openConnection(); Tc.Connect(); InputStreamReader in=new InputStreamReade(tc.getInputStream(); BufferedReader dis=new BufferedReader(in); String inLine; .这里的代码实现逐行输入网址上的内容并显示 dis.close(); catch(MalformedURLException e)e.printStackTrace(); catch(IOException e) e.printStackTrace();) 三、程序分析题(本大题共4小题,每小题5分,共20分)1.阅读下列程序,请写出该程序的输出结果。 class B int b; B(int x)b=x;System.out.println(b=+b); class A extends B int a; A(int x,int y) super(x); a=y; System.out.println(b=+b+,a=+a); public class a32 public static void main(Stringargs) A obj=new A(1,2); 答案: a=1 a=1,b=22.阅读下列程序,请写出该程序的输出结果。 public class Test33 public static void main(Stringargs) inta=2,3,1,6; intb=4,2,3,5; intc=new int22; int i,j; for(i=0;ia.length;i+) for(j=0;jai.length;j+) cii=aii+bii; System.out.print(cii+); if(j=ai.length-1) System.out.println(); 答案:6 5 4 113.阅读下列程序,请写出该程序的功能。 importjava.applet.*; importjavax.swing.*; import java.awt.event.*; import java.util.*; public class StrC extends Applet static JTextField textl,text2;S s=new S(); public void init() textl=new JTextField(20);text2=new JTextField(20);setSize(400,l00); add(textl); add(text2);textl.addActionListener(s); class S implements ActionListener( public void actionPerformed(ActionEvent e) if(e.getSource()=StrC.textl) String s=StrC.textl.getText();String ss=: StringTokenizer pas=new StringTokenizer(s); while(pas.hasMoreTokens()ss+=pas.nextToken();) StrC.text2.setText(ss); 答案:建立两个文本框一个输入一个输出,并将第输入的值在输出中连接起来输出。4.阅读下列程序,请写出该程序的功能。 importjavax.swing.*;importjava.awt.*;importjava.awt.event.*; public class ComboBoxApp public static void main(Stringargs) ComboBoxDemo myComboBoxGUI=new ComboBoxDemo(); class ComboBoxDemo extends JFrame implements ActionListener String proList=Java,C+,Fortran); JTextField text;JComboBox comboBox; public ComboBoxDemo() setSize(200,100); Container conPane=getContentPane(); conPane.setBackground(Color.BLUE); conPane.setLayout(new FlowLayout(); comboBox=new JComboBox(proList); comboBox.addActionListener(this); comboBox.setEditable(true); conPane.add(comboBox);text=new JTextField(10); JScrollPane jsp=new JScrollPane(text); conPane.add(jsp);this.setVisible(true); public void actionPerformed(ActionEvent e) if(e.getSource()=comboBox) text.setText(String.valueOf (comboBox.getSelectedltem().toString().1ength(); 答案:组合框子窗体中设置一个文本框和一个组合框,组合框有三个选项。实现选择组合框中的内容在文本框中显示。5.阅读下列程序,请写出该程序的功能。 public class TwoThread extends Thread private Thread creatorThread; public TwoThread() creatorThread=Thread.currentThread(); public void run() for(int i=0;i5;i+) printMsg(); public void printMsg() Thread t=Thread.currentThread(); if(t=creatorThread) System.out.println(Creator thread); else if(t=this) System.out.println(New thread); public static void main(Stringargs) TwoThread tt=new TwoThread(); tt.start(); for(int i=O;i 0 ) d=n% 10; _ sum+=d_; n/= 10;_ return sum_;12、这是一个处理选择项目事件的子窗口类。窗口中有2个选择框,当选中某个选择框时,文本框将显示选择框对应的信息。class MyWindow extends JFrame implements ItemListener JTextField text; JCheckBox boxl, box2; MyWindow(String s) _supper(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.setLayout(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 itemStateChanged( _ItemEvent_e) if(e.getItemSelectable() = box1) text. setText(A公司生产); else if(e.getItemSelectable() = box2) text. setText(B公司生产); 13、以下定义的类ShareData用于管理多个线程共享数据val。为了保证对共享数据val修改的完整性,线程对val的操作需要互斥,类ShareData中定义的方法modiData()就是供共享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 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. _isAlive_ ()continue WhileLoop; break; System.out.println(t最后的结果是: +mrc.getVal(); class MyMultiThreadClass 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 val; ShareData(int initValue)val = initValue; int getVal()return val; private void putVal(int v)val = v; _synchronized_ void modiData(int d) putVal(getVal() + d);四、程序设计题(本题共10分)1.请编写方法double averageOfArray(doublea),返回非空数组中正数的平均值(数组中可能有非正数元素)。double average()fArray(double a)int i,n=0;double ave,sum=0.0for(i=0;i0)sum+=ai;n+ ave=sum/n;etun ave; 2.一个小应用程序,界面如题38图所示,其功能为比较两个文本框中输入的字符串是否相同,如果相同,那么在下方显示“两个字符串相同”,否则,显示“两个字符串不同”。按下“重置”按钮后清空文本框里面的内容。以下是程序的大部分,请编写其中的监视器方法。 import java.applet.*; import javax.swing.*; import java.awt.event.*; public class a38 extends Applet implements ActionListener JTextField textl,text2; JButton button1,button2; JLabel label1; public void init() text1=new JTextField(12);text2=new JTextField(12); buttonl=new JButton(比较);button2=new JButton(重置): label1=new JLabel(此处显示比较结果): add(text 1);add(text2);add(button1);add(button2);add(1abel1); text1.requestFocus();/将光标自动定位到第一个文本框 button 1.addActionListener(this);button2.addActionListener(this); public void actionPerformed(ActionEvent e)if(e.getSource()=button1) if(text1.getText().equals(text2.getText() label1.setText(“两个字符串相同”); else label1.setText(“两个字符串不同”); else if(e.getSource()=button2) text1.setText(null); text2.setText(null); 3、请编写方法void strReverse(String str),该方法的功能是输出一个新字符串,新字符串字符排列顺序与原字符串str的字符排列顺序相反。例如,strReverse(ABCD) 所输出的结果是DCBA。请使用字符串与字节数组的相互转换方法进行设计。public static void strReverse(String str) byte s=str.getBytes(); Strin

温馨提示

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

评论

0/150

提交评论