04747Java語言程序設計(一)歷年真題2_第1頁
04747Java語言程序設計(一)歷年真題2_第2頁
04747Java語言程序設計(一)歷年真題2_第3頁
04747Java語言程序設計(一)歷年真題2_第4頁
04747Java語言程序設計(一)歷年真題2_第5頁
已閱讀5頁,還剩5頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、精選文檔全國高等教育自學考試全國統一命題考試Java語言程序設計(一)試題課程代碼:04747一、單項選擇題(本大題共10小題,每小題1分,共10分)在每小題列出的四個備選項中只有一個是符合題目要求的,請將其代碼填寫在題后的括號內。錯選、多選或未選均無分。1.下列字符組合不能作為Java整型常量的是( )A.078B.0x3ACBC.5000D.0x3ABC2.以下程序代碼的輸出結果是( ) int x = 10; while (x > 7) System.out.print("*"); x-;A.*B.*C.*D.*3.設類U聲明,及對象u和v的定義如下:class

2、 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="123"; String s2="123"; String s3=new String("123");則表達式s1=s2和s

3、1=s3的值分別是( )A.true,trueB.false,falseC.true,falseD.false,true5.以下關于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子類中還要重定義一個方法,在這

4、個方法中調用繪圖方法,繪制各種圖形。要重定義的方法是( )A.paint()B.paintComponent()C.repaint()D.update()8.用Runnable接口實現多線程的主要工作是( )A.聲明實現Runnable接口的類,在類內實現run()方法,讓線程調用start()方法。B.聲明實現Runnable接口的類,在類內實現run()方法,在類內聲明線程對象,在init()方法中創建新線程,啟動新線程。C.聲明實現Runnable接口的類,在類內實現run()方法,在類內聲明線程對象,在Init()方法或start()方法中創建新線程,在start()方法中啟動新線程。

5、D.聲明實現Runnable接口的類,在類內實現run()方法,在init()方法中創建新線程,在start()方法中啟動新線程。9.程序如果要按行輸入輸出文件的字符流,最合理的方法是采用( )A.BufferedReader類和BufferedWriter類B.InputStream類和OutputStream類C.FileReader類和FileWriter類D.File_Reader類和File Writer類10.在編寫訪問數據庫的Java程序中,要用到DriverManager類。該類的作用是( )A.存儲查詢結果B.處理與數據庫的連接C.在指定的連接中處理SQL語句D.處理驅動程序

6、的加載和建立數據庫連接二、填空題(本大題共10小題,每小題2分,共20分)請在每小題的空格中填上正確答案。錯填、不填均無分。11.Java程序的字節碼文件的擴展名是_。12.構造一個Java表達式:yx>5,并且x!=0。這個表達式是_。13.在類聲明之前用_修飾,聲明類是不能被再繼承的類,即它不能再有子類。14.設有字符串定義:String s="ABCDABCD";則表達式s.indexOf("B")的值是_。15.在實現接口ActionListener的方法actionPerformed()中,常用的有兩個獲得事件源的方法,它們是getAct

7、ionCommand()和_。16.使用單選按鈕的方法是將一些單選按鈕用_對象分組,使同一組內的單選按鈕只允許一個被選中。17.在Java語言中,用類Font對象設置字型。如果要設置的字型是:細明體、正常風格(Font.PLAIN),12磅字號,構造這樣要求的Font對象fnA的代碼是_。18.線程從阻塞狀態恢復到就緒狀態,有三種途徑:自動恢復、用resume()方法恢復和用_方法恢復。19.為普通的8位字節流文件讀和寫操作提供支持的類是_。20.Connection類是java.sql包中用于處理與數據庫連接的類。Connection對象是用來表示_的對象,Java程序對數據庫的操作都在這種

8、對象上進行。三、簡答題(本大題共6小題,每小題3分,共18分)21.請寫出表示year年是閏年的Java表達式。閏年的條件是:每4年一個閏年,但每100年少一個閏年,每400年又增加一個閏年。22.請寫出在類的方法的定義之前,加上修飾字public、private的區別。23.請寫出將文本區text放置于滾動面板jsp,并將滾動面板jsp添加到JFrame窗口myFrame的Java語句。24.要用Graphics2D類的方法畫一個圖形,首先要把參數對象g強制轉換成Graphics2D對象;然后,用圖形類提供的靜態方法Double()創建一個圖形對象;最后,以圖形對象為參數調用Graphics

9、2D對象的draw()方法繪制這個圖形。請寫出用這樣的方法繪制一條線段的程序段,線段的兩個端點分別是(10.0,10.0)和(30.0,30.0)。25.請寫出字符流數據與字節流數據的區別。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

10、; _; n/= 10;_;28.以下小應用程序能響應鼠標按動的事件,當鼠標在正文區的某個位置被點擊時,就在該位置顯示一個記號“×”,程序限制最多保留最新20個位置。import java.applet.*; import java.awt.*;import javax.swing.*; import java.awt.event.*;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

11、); g.drawLine(x+5, y-5, x-5, y+5);class MyWindow extends JFrame implements MouseListener final int MaxMarks = 20; int currentMarks = 0, markCount = 0; Point marks = new PointMaxMarks; MyPanel panel; MyWindow() this.setLocation(100, 100); this.setSize(300, 300); Container con = this.getContentPane();

12、 panel = new MyPanel(); con.add(panel); _(this); this.setVisible(true); public void paint(Graphics g) int i; g.clearRect(0,0, this.getWidth(), this.getHeight(); for(i =0;i < markCount; i+) _(g, marksi.x, marksi.y); public void mousePressed(MouseEvent e) public void mouseReleased(MouseEvent e) pub

13、lic void mouseEntered(MouseEvent e) public void mouseExited(MouseEvent e) public void mouseClicked(MouseEvent e) markscurrentMarks = new Point(e.getX(), e.getY(); if(markCount < MaxMarks)markCount+; currentMarks = (currentMarks+ 1)%MaxMarks; repaint();public class Class1 extends Applet public voi

14、d init() MyWindow myWndow = new MyWindow(); 29.這是一個處理選擇項目事件的子窗口類。窗口中有2個選擇框,當選中某個選擇框時,文本框將顯示選擇框對應的信息。class MyWindow extends JFrame implements ItemListener JTextField text; JCheckBox boxl, box2; MyWindow(String s) _; Container con = this.getContentPane(); this.setLocation(100, 100); this.setSize(400,

15、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);

16、 con.add(text); box1 .addItemListener(this); box2.addItemListener(this); this.setVisible(true); this.pack(); public void itemStateChanged( _e) if(e.getItemSelectable() = box1) text. setText("A公司生產"); else if(e.getItemSelectable() = box2) text. setText("B公司生產"); 30.這是一個播放幻燈片的小應用程序

17、中的paint()方法。設幻燈片已由小應用程序的init()方法裝入內存,并存放于myImage數組中,幻燈片的張數放于變量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),

18、myImage currentImage.getHeight(this), this);31.以下定義的類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

19、= 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

20、 i = 0; i < 20; i+) if(aThreadArrayi. _ ()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

21、 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; _ void modiData(int d) putVal(getVal() + d);五、程序分析題(本大題共5小題,

22、每小題4分,共20分)32.閱讀下列程序,請寫出該程序的輸出結果。class A int x, y; A(int a, int b) x= a; y= b; public class sample public static void main(String args) A pl, p2; p2 = new A(12, 15); p1 = p2; p2.x+; System.out.println("p1.x=" + p1 .x); 33.閱讀下列程序,請寫出調用pascal(4)的輸出結果。static void pascal(int n) int pas; pas =

23、new intn; pas0 = 1; System.out.println(pas0); for (int i = 2; i <= n; i+) /* 由存儲在pas中的原來內容生成新內容*/ pasi - l =1; for (int j = i- 2;j > 0; j-) pasj = pasj + pasj - 1 ; for (int j = 0; j < i; j+) System.out.print(pasj +" "); System.out.println(); 34.閱讀下列程序,請用示意圖畫出程序運行時呈現的界面。import jav

24、a.applet.*;import java.awt *;import javax.swing.*;class MyPanel extends JPanel 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(); public class Cla

25、ss1 public static void main(String args) 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", &quo

26、t;標簽2"); JButton button = new JButton("開始按鈕"); con.add(panel1, "North");con.add(panel2, "South"); con.add(button, "Center"); mw.setVisible(true); 35.閱讀下列程序,請回答以下問題:(1)程序要求在文本框text中輸入的內容是什么?(2)輔助文本區showArea組件的作用是什么?(3)如何使程序開始下載網絡文本文件?(4)程序采用什么輸入方式下載網絡文件? i

27、mport .*; import java.awt.*; import java.awt.event.*; import,java.io.*; import javax.swing.*; public class Class1 public static void main(String args) . new ConnectNet("讀取網絡文本文件示意程序"); class ConnectNet extends JFrame implements ActionListener JTextField text=new JTextField(30); JTextArea s

28、howArea=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,"North"); con.add(jsp,"Center&

29、quot;); 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();/設置網絡連接 InputStreamReade

30、r 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.閱讀下列程序,請寫出該程序的功能。import ja

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論