Java复习参考题_第1页
Java复习参考题_第2页
Java复习参考题_第3页
Java复习参考题_第4页
Java复习参考题_第5页
免费预览已结束,剩余10页可下载查看

下载本文档

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

文档简介

精选文库说明:这是互联网1班的机密文档,不要随意外传,这里面的内容可能有些错误的,欢迎各位对这个文档进行修改,编程题有更好的方法的,也可以进行修改的了。最后成为完美的。这份文档仅供学习参考,不要只记答案,把原理搞明白啊。一些解释和填代码为蓝色或红色字体,希望好好看看,如果有修改的,在群里说或者自己发个修正版文档。题型及分数:单项选择题 (每小题2分,共30分)程序填空(每题5分,共20分)阅读程序(每小题10分,共20分)编程题(每小题10分,共30分)一、 选择题1、JAVA中提供了多种布局对象类。其中使用卡片式布局的是(D)。A.FlowLayout (流式布局) B.BoederLayout (围界布局 顶层容器默的) C.BoxLayout (盒子布局 是swing的) D.CardLayout(卡片布局)补充:GridLayout(网格布局)2、Swing与AWT的区别不包括 (D)。A.Swing是由纯Java实现的轻量级构件 B.Swing没有本地代码 C.Swing不依赖操作系统的支持 D.Swing支持图形用户界面 (都是支持的)3、下列哪个选项是创建一个标识有关闭按钮的语句?(C)A.JTextField b = new JtextField(关闭); (文本框)B.JTextArea b = new JTextArea(关闭); (文本域)C.JButton b = new Jbutton(关闭); (按钮)D.JCheckbox b = new Jcheckbox(关闭); (复选框) 补充:JPasswordField(口令输入域)、JLabel(标签) 、JComboBox(组合框)JList(列表框) 、JTable(表格) 、JMenu(菜单)、JDialog(对话框)JOptionPane(标准对话框)、JFileChooser(文件对话框)4、鼠标事件的监听器接口MouseListener能实现的事件不包括(D)。A.按下B.释放C.点击D.拖动补充:还有的是进入和离开事件窗口事件包括:关闭窗体、窗体失去焦点、获得焦点、最小化等 键盘事件包括:按下键盘按键、放开键盘按键、敲击键盘按键5、每个使用Swing组件的程序必须至少有一个(B)。A. 按钮B. 顶层容器C. 标签D. 菜单6、在Java中,而无需在程序中用import导入的包是(D)。Ajava.applet Bjava.awtCjava.util DJava.lang (默认的)7、类Panel默认的布局管理器是(C)。 AGridLayout BBorderLayout(顶层容器默认的)CFlowLayout (Panel面板默认的) DCardLayout8、java中用于创建文件对象的类是(A)。AFile (文件) B. Object (对象) C. Thread (线程) D. Frame (框架)9、下列描述中,正确的是(C)。A在Serializable接口中定义了抽象方法B在Serializable接口中定义了常量 C在Serializable接口中没有定义抽象方法,也没有定义常量 D在Serializable接口中定义了成员方法 10、在读文件a.dat 时,能使用该文件名作为参数进行实例化的类是(D)。ABufferedReader BufferedReader(Reader in)BDataInputStream DataInputStream(InputStream in)CDataOutputStream DataOutputStream(OutputStream out)DFileInputStream FileInputStream(File file)11、凡是从中央处理器流向外部设备的数据流称为( D )。 A文件流 B字符流 C输入流 D输出流12、当线程被创建后,调用start()方法之前,其所处的状态是(C)。 A阻塞状态 B运行状态 (run) C就绪状态 D新建状态(new)13、下面哪个关键字可以对对象加互斥锁。(A)Asynchronized Btransient Cserialize Dstatic14、为了得到当前正在运行的线程,可使用下列哪个方法?(B)。AgetName() (获得名字)BThread.CurrentThread().Bsleep() (睡眠) Drun() (运行)15、ServerSocket的监听方法accept()的返回值类型是(C) Avoid BObject CSocket DDatagramSocket16、当使用客户端套接字Socket创建对象时,需要指定(A) A服务器主机名称和端口 B服务器端口和文件 C服务器名称和文件 D服务器地址和文件17、若要取得数据包的中源地址,可使用下列哪个方法?(A) AgetAddress() BgetPort() CgetName() (源文件名)DgetData() (日期)18、程序与数据库连接后,需要查看某个表中的数据,使用下列哪个语句?(A)AexecuteQuery();(记录查询)BexecuteUpdate(); (记录操作)CexecuteEdit(); DexecuteSelect(); 二、程序填空1下面程序实现如下界面:import java.awt.*;class Qualification extends Frame Checkbox t1=new Checkbox(Visual Basic); Checkbox t2=new Checkbox(Visual C+); Checkbox t3=new Checkbox(Java); CheckboxGroup cg = new CheckboxGroup(); /复选框的组 Checkbox r1=new Checkbox(专科,cg,false); Checkbox r2=new Checkbox(本科,cg,false); Checkbox r3=new Checkbox(硕士,cg,false); Checkbox r4=new Checkbox(博士,cg,false); Label lb1=new Label(您的学历为: ); Label lb2=new Label(您精通的语言为: ); public Qualification(String s ) super(s); setLayout(new GridLayout(10, 1); /设置为网格布局10行一列 add(lb1);add(r1);add(r2);add(r3);add(r4);add(lb2);add(t1);add(t2);add(t3); public static void main(String args) Qualification q=new Qualification(学识!); /new 一个新对象q 标题是“学识!” q.setSize(400,250); q.show( ); 补充:这个程序主要是图形界面的基础,知道一些布局,知道一些组件使用方法,这些就差不多了。这个程序有点问题。程序网上地址:/link?url=e7fZSVCzUCN0RYCM6dNdt5CakdpQeMjmAt5pD4odn-tg1JGKgs0_P0Abe6KEQjdsZaaT9G_Sv_MZ9tazJzsV-q2下面程序从mytest.txt文件中读取字符,将读到的文字列在TextArea里面。import java.awt.*;import java.io.*;public class BufferedReaderTest extends Frame public static void main(String args) String str; BufferedReaderTest test=new BufferedReaderTest(); TextArea ta=new TextArea(); try /建立一个BufferedReader流读取文件 BufferedReader breader=new BufferedReader(new FileReader(mytext.txt); /对象要是文件 while(true) str=breader.readLine(); /读取一行文字 if(str=null) /读到文件结尾 break; ta.append(str+n); /将读到的文字列在TextArea里面 catch(IOException e) /捕获是否为文件未找到异常 test.add(ta,BorderLayout.CENTER); test.setSize(500,200); test.setVisible(true); /这是一道IO流的题目,要注意一些流的基本语法,而且要记住捕获的是IO异常3下面程序实现了文件拷贝功能,从file1.txt 把文字复制到file2.txt。import java.io.*;public class filestream public static void main(String args) try File inFile=new File(file1.txt); /源文件 File outFile=new File(file2.txt);/新文件 FileInputStream fis=new FileInputStream(inFile); FileOutputStream fos=new FileOutputStream(outFile); int c; while(c=fis.read()!=-1) fos.write(c); /新文件时写的,源文件是读的 fis.close(); fos.close(); catch(FileNotFoundException e) System.out.println(FileStreamsTest: +e); catch(IOException e) System.err.println(FileStreamsTest: +e);注意:文件读写流要注意,源文件是用来读(read)的,新文件用来写(write)的,不要弄错的了。4下面程序使用Swing设计一个窗口,窗口标题是“HelloSwing”,窗口包含一个标签“你好,Swing”。import javax.swing.*; public class HelloSwing public static void main(String args) JFrame frame = new JFrame(“HelloSwing”); /这个是窗体 JLabel label = new JLabel(“你好,Swing”); /这个是标签 frame.getContentPane().add(label); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(300,200); /设置窗体大小 frame.setVisible(true); 三、读程序写结果1、import java.io.*; public class CharInput public static void main(String args) throws java.io.IOException String s; inputStreamReader ir; BufferedReader in; ir=new inputStreamReader(System.io); in=new BufferedReader ir); while (s=in. readLine()!=null) System.out.println(“Read;”+s); 输出结果为:Read:+(s的内容,就是键盘输入的)2、import java.io.*; import java.util.Date; public class UnSerializeDate UnSerializeDate() Date d=null; try FileInputStream f=newFileInputStream (“date.ser”); ObjectInputStream s=new ObjectInputStream(f); d=(Date) s.readObject(); f.close(); catch(Exception e) e.printStackTrace(); System.out.println(“Unserialized Date object from date.set”); System.out.println(“Date:”+d); public static void main(String args) new UnSerializeDate(); 结果:会把date.ser文件里的内容读出来 补充:这个程序如何传参的:这个程序中main方法中没有传参数。而FileInputStream f = new FileInputStream (date.ser);在构造的时候,其中参数date.ser是与这个程序在同一个目录下的一个文件的名字。这样就可以通过 f 来读这个文件中的内容。而ObjectInputStream s = new ObjectInputStream (f); 这个是对象的反序列化,就是可以把一“序列化”到文件中的对象读出来。四、程序设计1、编写一个Java程序实现多线程,在线程中输出线程的名字,隔300毫秒输出一次,共输出20次。源代码:public class si1 extends Threadpublic static void main(String args) Thread si = new Thread20; /线程创建 for(int i = 0; i 20; i+) /为了次数的限制sii = new Thread(); sii.start(); /线程就绪 System.out.println(sii.getName(); System.out.println(线程睡眠300毫秒); try Thread.sleep(300); /线程睡眠 catch (InterruptedException e) / TODO 自动生成的 catch 块e.printStackTrace(); 2. 编写程序,在屏幕上显示带标题的窗口,并添加一个按钮。当用户单击按钮时,结束程序。源代码:import java.awt.*;import java.awt.event.*;import javax.swing.*;public class si2 private JFrame loginFrame = null; private JPanel loginPanel = null; private JPanel buttonPanel = null; private JButton submit = null; private void init() loginFrame = new JFrame(退出); loginPanel = new JPanel(); buttonPanel = new JPanel(); submit = new JButton(退出); loginFrame.setLayout(new GridLayout(3,1); loginFrame.add(buttonPanel); buttonPanel.add(submit); submit.addActionListener(new ButtonListener(); loginFrame.pack(); loginFrame.setLocation(400, 300); loginFrame.setSize(500,300); loginFrame.setVisible(true); loginFrame.setAlwaysOnTop(true); private class ButtonListener implements ActionListener /监听按钮的 public void actionPerformed(ActionEvent event) String command = event.getActionCommand(); if(退出.equals(command) System.exit(0); public static void main(String args) new si2().init(); 3 编写程序实现窗口,包含一个标签、一个文本框和一个按钮,当用户单击按钮时,程序把文本框中的内容复制到标签中。源代码:import java.awt.*;import java.awt.event.*;import javax.swing.*;public class si3 private JFrame loginFrame = null; private JPanel loginPanel = null; private JPanel wenziPanel = null; private JPanel biaoPanel = null; private JPanel buttonPanel = null; private JTextField wenziField = null; private JLabel wenziLabel = null; private JButton submit = null; private void init() loginFrame = new JFrame(复制界面); loginPanel = new JPanel(); wenziPanel = new JPanel(); biaoPanel = new JPanel(); buttonPanel = new JPanel(); wenziField = new JTextField(15); wenziLabel = new JLabel(准备复制); submit = new JButton(复制); loginFrame.setLayout(new GridLayout(3,1); loginFrame.add(wenziPanel); loginFrame.add(biaoPanel); loginFrame.add(buttonPanel); biaoPanel.add(wenziLabel); wenziPanel.add(wenziField); buttonPanel.add(submit); submit.addActionListener(new ButtonListener(); loginFrame.pack(); loginFrame.setLocation(400, 300); loginFrame.setSize(500,300); loginFrame.setVisible(true); loginFrame.setAlwaysOnTop(true); private class ButtonListener implements ActionListener public void actionPerformed(ActionEvent event) String command = event.getActionCommand(); String str= wenziField.getText(); if(复制.equals(command) wenziLabel.setText(str); public static void main(String arg) new si3().init(); 4 使用Socket技术,编写服务器端和客户端程序,实现服务器端和客户端的通信。服务器端接受客户端发送来的信息并回显,直到客户端发送结束标记END;客户端向服务器发送信息,并接受服务器端返回来的消息,并且回显。源代码: 客户端:import java.io.*;import .*;import java.util.*;public class SocketClientTest public static void main(String args) try Socket clientSocket = new Socket(localhost, 1688); InputStream inData = clientSocket.getInputStream(); OutputStream outData = clientSocket.getOutputStream(); PrintWriter toServer = new PrintWriter(outData, true); Scanner sc = new Scanner(System.in); Scanner data = new Scanner(inData); String heading = data.nextLine(); System.out.println(heading); while (sc.hasNextLine(

温馨提示

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

评论

0/150

提交评论