1、5.以下关于AWT与Swing之间关系的叙述,正确的是( )A.Swing是AWT的提高和扩展B.在写GUI程序时,AWT和Swing不能同时使用C.AWT和Swing在不同的平台上都有相同的表示D.AWT中的类是从Swing继承的6.在以下Swing组件中,能为它指定布局管理器的是( )A.JScrollBar对象 B.JMenuBar对象C.JComboBox对象 D.JDialog对象7.一般的绘图程序要定义一个JPanel子类。在JPanel子类中还要重定义一个方法,在这个方法中调用绘图方法,绘制各种图形。要重定义的方法是( )A.paint() B.paintComponent()C
2、.repaint() D.update()8.用Runnable接口实现多线程的主要工作是( )A.声明实现Runnable接口的类,在类内实现run()方法,让线程调用start()方法。B.声明实现Runnable接口的类,在类内实现run()方法,在类内声明线程对象,在init()方法中创建新线程,启动新线程。C.声明实现Runnable接口的类,在类内实现run()方法,在类内声明线程对象,在Init()方法或start()方法中创建新线程,在start()方法中启动新线程。D.声明实现Runnable接口的类,在类内实现run()方法,在init()方法中创建新线程,在start()
3、方法中启动新线程。9.程序如果要按行输入输出文件的字符流,最合理的方法是采用( )A.BufferedReader类和BufferedWriter类B.InputStream类和OutputStream类C.FileReader类和FileWriter类D.File_Reader类和File_Writer类10.在编写访问数据库的Java程序中,要用到DriverManager类。该类的作用是( )A.存储查询结果B.处理与数据库的连接C.在指定的连接中处理SQL语句D.处理驱动程序的加载和建立数据库连接二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。错填、
4、不填均无分。11.Java程序的字节码文件的扩展名是_。12.构造一个Java表达式:yx5,并且x!=0。这个表达式是_。13.在类声明之前用_修饰,声明类是不能被再继承的类,即它不能再有子类。14.设有字符串定义:String s=ABCDABCD则表达式s.indexOf(B)的值是_。15.在实现接口ActionListener的方法actionPerformed()中,常用的有两个获得事件源的方法,它们是getActionCommand()和_。16.使用单选按钮的方法是将一些单选按钮用_对象分组,使同一组内的单选按钮只允许一个被选中。17.在Java语言中,用类Font对象设置字型
5、。如果要设置的字型是:细明体、正常风格(Font.PLAIN),12磅字号,构造这样要求的Font对象fnA的代码是_。18.线程从阻塞状态恢复到就绪状态,有三种途径:自动恢复、用resume()方法恢复和用_方法恢复。19.为普通的8位字节流文件读和写操作提供支持的类是_。20.Connection类是java.sql包中用于处理与数据库连接的类。Connection对象是用来表示_的对象,Java程序对数据库的操作都在这种对象上进行。三、简答题(本大题共6小题,每小题3分,共18分)21.请写出表示year年是闰年的Java表达式。闰年的条件是:每4年一个闰年,但每100年少一个闰年,每4
6、00年又增加一个闰年。22.请写出在类的方法的定义之前,加上修饰字public、private的区别。23.请写出将文本区text放置于滚动面板jsp,并将滚动面板jsp添加到JFrame窗口myFrame的Java语句。24.要用Graphics2D类的方法画一个图形,首先要把参数对象g强制转换成Graphics2D对象;然后,用图形类提供的静态方法Double()创建一个图形对象;最后,以图形对象为参数调用Graphics2D对象的draw()方法绘制这个图形。请写出用这样的方法绘制一条线段的程序段,线段的两个端点分别是(10.0,10.0)和(30.0,30.0)。25.请写出字符流数据
7、与字节流数据的区别。26.请写出URLConnection类在编写Java网络应用程序中的作用。四、程序填空题(本大题共5小题,每小题4分,共20分)27.方法int sigmaDigit(int n)的功能是求出十进制整数n的各位数字之和。例如,n=1234,该方法的返回值是10。 static int sigmaDigit( int n ) int sum = 0, d; while( n 0 ) d=n% 10; _; n/= 10;_;28.以下小应用程序能响应鼠标按动的事件,当鼠标在正文区的某个位置被点击时,就在该位置显示一个记号“”,程序限制最多保留最新20个位置。import j
8、ava.applet.*; import java.awt.*;class MyPanel extends JPanel public void print(Graphics g, int x, int y)( g.setColor(Color.red); g.drawLine(x-5, y-5, x+5, y+5); g.drawLine(x+5, y-5, x-5, y+5);class MyWindow extends JFrame implements MouseListener final int MaxMarks = 20; int currentMarks = 0, markCo
9、unt = 0; Point marks = new PointMaxMarks; MyPanel panel; MyWindow() this.setLocation(100, 100); this.setSize(300, 300); Container con = this.getContentPane(); panel = new MyPanel(); con.add(panel); _(this); this.setVisible(true); public void paint(Graphics g) int i; g.clearRect(0,0, this.getWidth(),
10、 this.getHeight(); for(i =0;i markCount; i+) _(g, marksi.x, marksi.y); public void mousePressed(MouseEvent e) public void mouseReleased(MouseEvent e) public void mouseEntered(MouseEvent e) public void mouseExited(MouseEvent e) public void mouseClicked(MouseEvent e) markscurrentMarks = new Point(e.ge
11、tX(), e.getY(); if(markCount MaxMarks)markCount+; currentMarks = (currentMarks+ 1)%MaxMarks; repaint();public class Class1 extends Applet public void init() MyWindow myWndow = new MyWindow(); 29.这是一个处理选择项目事件的子窗口类。窗口中有2个选择框,当选中某个选择框时,文本框将显示选择框对应的信息。class MyWindow extends JFrame implements ItemListene
12、r JTextField text; JCheckBox boxl, box2; MyWindow(String s) this.setSize(400, 200); text = new JTextField(10); box1 = new JCheckBox(A计算机, false); box2 = new JCheckBox(B计算机 con.setLayout(new GridLayout(3, 2); con.add( new JLabel(计算机产品介绍, JLabel.CENTER); add(new JLabel(计算机2选1 con.add(box1); con.add(bo
13、x2); con.add(text); box1 .addItemListener(this); box2.addItemListener(this); this.pack(); public void itemStateChanged( _e) if(e.getItemSelectable() = box1) text. setText(A公司生产); else if(e.getItemSelectable() = box2) B公司生产30.这是一个播放幻灯片的小应用程序中的paint()方法。设幻灯片已由小应用程序的init()方法装入内存,并存放于myImage数组中,幻灯片的张数放于
14、变量num中,paint()方法要播放的幻灯片号是currentImage。int currentImage = 0;final int num = 30;Image myImage = new _ num;public void paint(Graphics g) if (mylmagecurrentImage) != null) g. _ (myImagecurrentImage, 10, 10, myImage currentImage.getWidth(this), myImage currentImage.getHeight(this), this);31.以下定义的类ShareDa
15、ta用于管理多个线程共享数据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; for(int i = 0; i 0; j-) pasj = pasj + pasj -
16、 1 ; for (int j = 0; j i; j+)34.阅读下列程序,请用示意图画出程序运行时呈现的界面。import java.awt *;import javax.swing.*; JButton button; JLabel label; MyPanel(String s1, String s2) this.setLayout(new GridLayout(2, 2); button = new JButton(s1); label = new JLabel(s2, JLabel.CENTER); add(button); add(label); add(new JLabel()
17、; JFrame mw = new JFrame(一个示意窗口 mw.setSize(400, 250); Container con = mw.getContentPane(); con.setLayout(new BorderLayout(); MyPanel panel1, panel2; panel1 = new MyPanel(按钮1 ,标签1 panel2 = new MyPanel(按钮2, 标签2 JButton button = new JButton(开始按钮 con.add(panel1, Northcon.add(panel2, South con.add(button
18、, Center mw.setVisible(true);35.阅读下列程序,请回答以下问题:(1)程序要求在文本框text中输入的内容是什么?(2)辅助文本区showArea组件的作用是什么?(3)如何使程序开始下载网络文本文件?(4)程序采用什么输入方式下载网络文件? import .*; import java.awt.*; public class Class1 public static void main(String args) . new ConnectNet(读取网络文本文件示意程序 class ConnectNet extends JFrame implements Act
19、ionListener JTextField text=new JTextField(30); JTextArea showArea=new JTextArea(); JButton b=new JButton(下载JPanel p=new JPanel(); ConnectNet(String s) super(s);Container con=this.getContentPane(); p.add(text);p.add(b); JScrollPane jsp=new JScrollPane(showArea); b.addActionListener(this); con.add(p,
20、 con.add(jsp, setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setSize(500,400);setVisible(true); public void actionPerformed(ActionEvent e) String urlName=text.getText(); try URL url=new URL(urlName);/由网址创建URL对象 URLConnection tc=url.openConnection();/获得URLConnection对象 tc.connect();/设置网络连接 InputStrea
21、mReader in=new InputStreamReader(tc.getInputStream(); BufferedReader dis=new BufferedReader(in); String inLine; while(inLine=dis.readLine()!=null)showArea.append(inLine+n dis.close(); catch(MalformedURLException e2)e2.printStackTrace(); catch(IOException e3) e3.printStackTrace();36.阅读下列程序,请写出该程序的功能。
22、 Thread myThread = null; public void start() setSize(500, 400); if (myThread = null) myThread = new Thread(this); myThread.start(); while (myThread != null) try myThread.sleep(500); catch (InterruptedException e) public void paint(Graphics g) int x = (int)(400*Math.random(); int y = (int)(300*Math.random(); g.fillOval(x,y, 10, 10);六、程序设计题(本大题共2小题,每小题6分,共12分)37.编写数组复制方法。该方法从已知平衡的两维数组的左下角复制出一个非平衡的三角二维数组。设复制数组方法的模型为:public static double leftDownConer(doubleanArray)38.设计实现以下形式布局的Java小应用程序。注1:其中空白格是文本框,用于输入
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1