首頁(yè) 考試吧論壇 Exam8視線 考試商城 網(wǎng)絡(luò)課程 模擬考試 考友錄 實(shí)用文檔 求職招聘 論文下載
2011中考 | 2011高考 | 2012考研 | 考研培訓(xùn) | 在職研 | 自學(xué)考試 | 成人高考 | 法律碩士 | MBA考試
MPA考試 | 中科院
四六級(jí) | 職稱英語(yǔ) | 商務(wù)英語(yǔ) | 公共英語(yǔ) | 托福 | 雅思 | 專四專八 | 口譯筆譯 | 博思 | GRE GMAT
新概念英語(yǔ) | 成人英語(yǔ)三級(jí) | 申碩英語(yǔ) | 攻碩英語(yǔ) | 職稱日語(yǔ) | 日語(yǔ)學(xué)習(xí) | 法語(yǔ) | 德語(yǔ) | 韓語(yǔ)
計(jì)算機(jī)等級(jí)考試 | 軟件水平考試 | 職稱計(jì)算機(jī) | 微軟認(rèn)證 | 思科認(rèn)證 | Oracle認(rèn)證 | Linux認(rèn)證
華為認(rèn)證 | Java認(rèn)證
公務(wù)員 | 報(bào)關(guān)員 | 銀行從業(yè)資格 | 證券從業(yè)資格 | 期貨從業(yè)資格 | 司法考試 | 法律顧問(wèn) | 導(dǎo)游資格
報(bào)檢員 | 教師資格 | 社會(huì)工作者 | 外銷(xiāo)員 | 國(guó)際商務(wù)師 | 跟單員 | 單證員 | 物流師 | 價(jià)格鑒證師
人力資源 | 管理咨詢師考試 | 秘書(shū)資格 | 心理咨詢師考試 | 出版專業(yè)資格 | 廣告師職業(yè)水平
駕駛員 | 網(wǎng)絡(luò)編輯
衛(wèi)生資格 | 執(zhí)業(yè)醫(yī)師 | 執(zhí)業(yè)藥師 | 執(zhí)業(yè)護(hù)士
會(huì)計(jì)從業(yè)資格考試會(huì)計(jì)證) | 經(jīng)濟(jì)師 | 會(huì)計(jì)職稱 | 注冊(cè)會(huì)計(jì)師 | 審計(jì)師 | 注冊(cè)稅務(wù)師
注冊(cè)資產(chǎn)評(píng)估師 | 高級(jí)會(huì)計(jì)師 | ACCA | 統(tǒng)計(jì)師 | 精算師 | 理財(cái)規(guī)劃師 | 國(guó)際內(nèi)審師
一級(jí)建造師 | 二級(jí)建造師 | 造價(jià)工程師 | 造價(jià)員 | 咨詢工程師 | 監(jiān)理工程師 | 安全工程師
質(zhì)量工程師 | 物業(yè)管理師 | 招標(biāo)師 | 結(jié)構(gòu)工程師 | 建筑師 | 房地產(chǎn)估價(jià)師 | 土地估價(jià)師 | 巖土師
設(shè)備監(jiān)理師 | 房地產(chǎn)經(jīng)紀(jì)人 | 投資項(xiàng)目管理師 | 土地登記代理人 | 環(huán)境影響評(píng)價(jià)師 | 環(huán)保工程師
城市規(guī)劃師 | 公路監(jiān)理師 | 公路造價(jià)師 | 安全評(píng)價(jià)師 | 電氣工程師 | 注冊(cè)測(cè)繪師 | 注冊(cè)計(jì)量師
繽紛校園 | 實(shí)用文檔 | 英語(yǔ)學(xué)習(xí) | 作文大全 | 求職招聘 | 論文下載 | 訪談 | 游戲

2009年上半年等級(jí)考試二級(jí)JAVA精選試題復(fù)習(xí)

 

  20. 編程題::寫(xiě)一個(gè)滿足Singleton模式的類(lèi)出來(lái)

  public class SingletonTest

  {

  private static SingletonTest sp;

  private SingletonTest() {}

  public static SingletonTest getInstance()

  {

  if (sp==null)

  { sp=new SingletonTest(); }

  return sp;

  }

  21. 編程:編寫(xiě)一個(gè)截取字符串的函數(shù),輸入為一個(gè)字符串和字節(jié)數(shù),輸出為按字節(jié)截取的字符串。 但是要保證漢字不被截半個(gè),如“我ABC”4,應(yīng)該截為“我AB”,輸入“我ABC漢DEF”,6,應(yīng)該輸出為“我ABC”而不是“我ABC+漢的半個(gè)”

  解:import java.io.*;

  class interceptString

  {

  String interceptStr;

  int interceptByte;

  public interceptString(String str,int bytes)

  {

  interceptStr=str;

  interceptByte=bytes;

  System.out.println("字符串為:'"+interceptStr+"';字節(jié)數(shù)為:"+interceptByte);

  }

  public void interceptIt()

  {

  int interceptCount; interceptCount=(interceptStr.length()%interceptByte==0)?(interceptStr.length()/interceptByte):(interceptStr.length()/interceptByte+1);

  System.out.println("截取后斷數(shù)為:"+interceptCount);

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

  { if (i==interceptCount)

  {

  System.out.println(interceptStr.substring((i-1)*interceptByte,interceptStr.length()));

  } else

  {

  System.out.println(interceptStr.substring((i-1)*interceptByte,(i*interceptByte)));

  }

  }

  }

  public static void main(String[] args)

  {

  String s="";

  InputStreamReader ir=new InputStreamReader(System.in);

  BufferedReader in = new BufferedReader(ir);

  try {

  s = in.readLine();

  interceptString ss = new interceptString(s,4);

  ss.interceptIt();

  in.close();

  } catch (IOException e)

  { e.printStackTrace();}

  }

  }

  22. 多線程有幾種實(shí)現(xiàn)方法,都是什么?同步有幾種實(shí)現(xiàn)方法,都是什么?

  答:多線程有三種實(shí)現(xiàn)方法,分別為:

 、 實(shí)現(xiàn)Runnable接口,覆蓋Run()方法。

 、 繼承Thread,覆蓋Run()方法。

 、 繼承TimerTask,覆蓋Run()方法。

  同步的實(shí)現(xiàn)是在方法前加synchronized,在調(diào)用wait()和notify()。

  23. 請(qǐng)說(shuō)出你所知道的線程同步的方法

  答:1. synchronized 方法:通過(guò)在方法聲明中加入 synchronized關(guān)鍵字來(lái)聲明 synchronized 方法。

  2. synchronized 塊:通過(guò) synchronized關(guān)鍵字來(lái)聲明synchronized 塊。

  24. 當(dāng)一個(gè)線程進(jìn)入一個(gè)對(duì)象的一個(gè)synchronized方法后,其它線程是否可進(jìn)入此對(duì)象的其它方法?

  答:不可以。synchronized 方法都必須獲得調(diào)用該方法的類(lèi)實(shí)例的鎖方能執(zhí)行,否則所屬線程阻塞,方法一旦執(zhí)行,就獨(dú)占該鎖,直到從該方法返回時(shí)才將鎖釋放,此后被阻塞的線程才能獲得該鎖,重新進(jìn)入可執(zhí)行狀態(tài)。

  25. 用JAVA SOCKET編程,實(shí)現(xiàn)簡(jiǎn)單的Echo功能

  如: 客戶端從鍵盤(pán)輸入 hi (當(dāng)用戶輸出exit 退出程序),服務(wù)端響應(yīng)為 hi(服務(wù)器要求為多線程)

  解:服務(wù)器程序:

  import java.io.*;

  import java.net.*;

  public class MyServer extends Thread{

  private Socket cq ;

  public MyServer(Socket cq)

  {

  this.cq = cq;

  }

  public void run()

  {

  try

  {

  BufferedReader in=new BufferedReader(new InputStreamReader(cq.getInputStream()));

  PrintWriter out=new PrintWriter(cq.getOutputStream());

  while(true)

  {

  String str=in.readLine();

  System.out.println(str);

  out.println("message: "+str);

  out.flush();

  if(str.equals("exit"))

  break;

  }

  }

  catch(IOException e)

  {

  System.out.println(e.message());

  }

  }

  public static void main(String[] args) throws IOException{

  ServerSocket server=new ServerSocket(8009);

  while(true)

  {

  Socket s=server.accept();

  new MyServer(s).start();

  }

  }

  }

  客戶端程序:

  import java.net.*;

  import java.io.*;

  public class MyClient{

  public static void main(String[] args)throws Exception

  {

  Socket server=new Socket("localhost",8009);

  BufferedReader in=new BufferedReader(new InputStreamReader(server.getInputStream()));

  PrintWriter out=new PrintWriter(server.getOutputStream());

  BufferedReader br=new BufferedReader(new InputStreamReader(System.in));

  while(true)

  {

  String str=br.readLine();

  out.println(str);

  out.flush();

  if(str.equals("exit")){

  break;

  }

  System.out.println(in.readLine());

  }

  server.close();

  }

  }

  相關(guān)推薦:全國(guó)計(jì)算機(jī)等級(jí)考試將于3月28日至4月1日舉行
       2009年全國(guó)計(jì)算機(jī)等級(jí)考試各科目考試大綱
       2009上半年計(jì)算機(jī)等級(jí)考試各地報(bào)名時(shí)間匯總
文章搜索
版權(quán)聲明:如果計(jì)算機(jī)等級(jí)考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請(qǐng)與我們聯(lián)系800@exam8.com,我們將會(huì)及時(shí)處理。如轉(zhuǎn)載本計(jì)算機(jī)等級(jí)考試網(wǎng)內(nèi)容,請(qǐng)注明出處。