Java阶段性测试--知识点:数组,面向对象,集合、线程,IO流
#Java基礎(chǔ)測試
涉及知識點:數(shù)組,面向?qū)ο?#xff0c;重載,重寫,繼承,集合,排序,線程,文件流
一、多項選擇題(可能是單選,也可能是多選)
1.下列標(biāo)識符命名不合法的是( ??D??)。
A.$_Name
B.$_¥
C.line
D.2variable
?
2.下列不屬于基本數(shù)據(jù)類型的是( ?B?C?)。
A.boolean ???????
B.Integer; ??????
C.String ???
D.char
?
3.設(shè)數(shù)據(jù)的源碼為10100110,那么這個數(shù)據(jù)的補碼是多少( ?C?)。
A.10100110
B.10100111
C.11011010
D.11011001
?
4.?給出下列代碼片段:
If ( x > 0 ) { System.out.println(“Hello.”); }
else if ( x <-3 ) { System.out.pirntln ( “ I am Tom. ”); }
else { System.out.println (“How are you?”); }
請問將打印字符串?“How are you ?”的x的范圍是( B???)。
A.?x>0
B.?x<=0&&x>=-3
C.?x>=-3
D.?x<=0||x>=-3
?
5.對函數(shù)void add(int a, int b){}下面不屬于函數(shù)重載的是( ?AB?)。
A.?public void add(int a, int b){}
B.?int add(int a, int b){return a + b;}
C.?int add(int a){return a + 10;}
D.?double add(){return 9.0}
?
6.關(guān)于多態(tài),下面描述正確的是( ?C??)?!咀?#xff1a;Father是Son的父類】
A. 當(dāng)編譯時類型與運行時類型不一致時,才會有多態(tài)的體現(xiàn)。
B. Son s = new Father(); 這行代碼在Java中是允許存在的
C. Father f = new Son();將Father的引用變量f轉(zhuǎn)化成Son類型需要強轉(zhuǎn)
D. Father f = new Son(); 用f調(diào)用Son類型的方法,編譯可以通過。
?
7.下列說法正確的有( ACD??)。
A.在Java中接口允許多繼承
B.在自定義類時,既繼承類又實現(xiàn)接口,可以實現(xiàn)接口在前,繼承類在后
C.普通類繼承自抽象類時,必須重寫抽象類中的抽象方法
D.實現(xiàn)接口時,重寫接口中的方法時不用考慮方法的訪問權(quán)限問題
?
8.對于說法有誤的是( ?CD??)。
A.定義類和成員時,要不寫訪問權(quán)限修飾符,默認(rèn)的訪問權(quán)限是default
B.線程的默認(rèn)優(yōu)先級別值對應(yīng)的字段是NORMAL_PRIORITY
C.線程優(yōu)先級別高的會一直霸占的CPU的調(diào)度,級別低的必須等級別高的執(zhí)行完才有執(zhí)行的機會
D.創(chuàng)建不同包下類的對象時,可以直接使用類,無需考慮其他問題
?
9.下面關(guān)于集合的描述正確的有( ??BC??)。
A.集合中的類主要是由Collection,List和Map接口派生來的
B.在HashSet集合中存放元素時,元素位置是根據(jù)hashCode值放置的
C.當(dāng)遍歷集合時,我們可以對集合進行刪除元素的操作
D.Stack類中調(diào)用peek()方法時,會依次取出集合中的元素
?
10.下面線程說法正確的有( ?ACD???)。
A.當(dāng)前臺線程執(zhí)行完之后,后臺線程隨之消亡
B.線程阻塞后會立即死亡
C.當(dāng)遇到多個線程訪問同一資源出現(xiàn)數(shù)據(jù)混亂問題時,可以使用同步方法來解決
D.在繼承Thread類來定義線程類時,重寫的run方法可以使用this表示當(dāng)前線程
?
?
第二題:
1、打印出所有的 "水仙花數(shù) ",所謂 "水仙花數(shù) “是指一個三位數(shù),其各位數(shù)字立方和等于它本身
2、利用封裝的思想,編寫程序:
創(chuàng)建一個叫做Person的實體類:
屬性:姓名、年齡、性別
行為:說話、計算加法、改名
創(chuàng)建一個測試類P_Test,在測試類中創(chuàng)建Person類的對象:名叫“張三”,性別“男”,年齡23歲,讓該對象調(diào)用成員方法:說出“Hello”;計算23+78的值;將名字改為“Mike”。
第三題:?按照要求完成下列問題
【1】請隨機生成10個從5到150之間的數(shù)字(大于等于5小于等于150),將生成的隨機數(shù)存儲在整型數(shù)組中(不考慮重復(fù))
【2】使用冒泡排序?qū)?shù)組中的元素進行降序排列
【3】有如下一個數(shù)組{11,22,1,33,1,1,44,0,66,1,77,1,1,88}
要求將其中為1的元素值給去掉,通過合適的代碼得到如下的新數(shù)組
{11,22,33,44,0,66,77,88}(數(shù)組長度等于數(shù)據(jù)長度)
?
第四題:.此題要求用IO流完成
1.?使用File類在D盤下創(chuàng)建目錄myFiles, 并在myFiles目錄下創(chuàng)建三個文件分別為:info1.txt, info2.txt, info3.txt 。
2.?向info1.txt, info2.txt, info3.txt 中分別追加內(nèi)容“第一個文件內(nèi)容,千鋒歡迎你”,“第二個文件內(nèi)容,中國移動培訓(xùn)專家”,“第三個文件內(nèi)容,千鋒助你高薪就業(yè)”。?
3.?把info1.txt , info2.txt,info3.txt 用String類中的方法截取到 文件名字,不包括拓展名,將名字變成大寫,并且給文件重命名成為?INFO1.txt,INFO2.txt ,INFO3.txt,并復(fù)制到myFiles\txt目錄下(須用程序創(chuàng)建txt文件夾)
4.?鍵盤輸入一個關(guān)鍵字“千鋒”,列出myFiles目錄下包含“千鋒”關(guān)鍵字的文件?
5.?遞歸刪除myFiles目錄,并記錄刪除的信息,格式為 “INFO1.txt ?刪除成功(失敗) ?2015-8-10 10:20:30”.將文件保存到D:\log.txt中,(注意:log.txt文件不要提交)
?
運行效果:如下圖
?
?
第五題.按要求完成如下功能
【1】創(chuàng)建一明星Star類,屬性:star_No(明星編號)、star_Name(明星名字)、star_Masterpieces(明星的成名作)、star_Home(明星祖籍)、star_Marriage(明星婚否)、star_Info(明星信息);封要求所有屬性封裝,重寫toString方法。 (4分)
?
【2】 根據(jù)下列提供的信息創(chuàng)建Star對象,將每個字符串中的字段所對應(yīng)的值設(shè)置到對象屬性中。
star_No:10000001 star_Name:胡軍?star_Masterpieces:天龍八部?star_Marriage:true?star_Home:北京市Star_Info:胡軍出生在北京的一個藝術(shù)世家,屬于滿族鑲黃旗。父親胡寶善是男中音歌唱家,母親王亦滿是話劇演員,伯父是著名的男高音歌唱家胡松華,2013年,擔(dān)任北京東城區(qū)消防形象大使。
?
(2)star_No:10000002 star_Name:鹿晗?star_Masterpieces:重返20歲star_Marriage:false??star_Home:北京市Star_Info:鹿晗(LU HAN),中國男演員、歌手。1990年4月20日出生于北京。2008年赴韓國留學(xué)期間在明洞逛街時被韓國SM娛樂公司星探發(fā)掘,簽約成為旗下練習(xí)生。2012年4月以EXO組合主唱、領(lǐng)舞、門面擔(dān)當(dāng)身份正式出道,在中外各國迅速獲得超高人氣。
(3)star_No:10000011 star_Name:孫儷?star_Masterpieces:后宮甄嬛傳star_Marriage:true star_Home:上海市?Star_Info:孫儷,本名孫麗,1982年9月26日出生于上海市,中國大陸女演員、歌手。5歲開始學(xué)舞蹈,11歲出訪國外表演,15歲擔(dān)任上海警備區(qū)文工團文藝兵3年;退伍后進入東方文化學(xué)院學(xué)習(xí)。
(4)star_No:10000101 star_Name:王寶強?star_Masterpieces:天下無賊?star_Marriage:true star_Home:河北省邢臺市南和縣Star_Info:王寶強,中國內(nèi)地男演員,1984年5月29日出生于河北省邢臺市,6歲時開始練習(xí)武術(shù),8歲在嵩山少林寺做俗家弟子,20歲時主演獨立電影《盲井》獲金馬獎最佳新人獎及法國、泰國電影節(jié)最佳男主角獎。
【3】創(chuàng)建用于存放明星對象的TreeMap<Star,String>,用于存放上述的幾個明星,使用自然排序進行排序,要求按照第一條件star_No明星編號升序排列,第二條件start_Name 降序排序
?
【4】使用HashMap<Star,String>集合進行存儲,將Star對象作為鍵,vlaue值為與該明星有關(guān)的作品名。并遍歷輸出集合元素(要求:明星編號和明星姓名和明星成名作相同的為同一明星)。
?
【5】 要求在上題遍歷集合時,要求編程實現(xiàn)在當(dāng)前項目中,根據(jù)獲取的每個具體對象的star_Name為名稱創(chuàng)建相應(yīng)文件,將明星對象進行序列化保存
?
運行效果:如下圖
?
?
第六題 ?線程
寫兩個線程,一個線程打印1-52,另一個線程答應(yīng)字母A-Z。打印順序為12A34B56C……5152Z。通過使用線程之間的通信協(xié)調(diào)關(guān)系。
注:分別給兩個對象構(gòu)造一個對象o,數(shù)字每打印兩個或字母每打印一個就執(zhí)行o.wait()。在o.wait()之前不要忘了寫o.notify()
?
編程題代碼見下一節(jié)總結(jié)
以上是生活随笔為你收集整理的Java阶段性测试--知识点:数组,面向对象,集合、线程,IO流的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java IO流之普通文件流和随机读写流
- 下一篇: java美元兑换,(Java实现) 美元