java實(shí)習(xí)生面試題
實(shí)習(xí)生在面試Java崗位時(shí),做好面試準(zhǔn)備很重要,那么你了解面試題目了嗎?下面小編已經(jīng)為你們整理了java實(shí)習(xí)生面試題,希望可以幫到你。
java實(shí)習(xí)生面試題1
1.Java有那些基本數(shù)據(jù)類型,String是不是基本數(shù)據(jù)類型,他們有何區(qū)別。
Java語言提供了八種基本類型:
六種數(shù)字類型(四個(gè)整數(shù)型,兩個(gè)浮點(diǎn)型)
字節(jié)型byte 8位 短整型short 16位 整型int 32位
長整型long 64位 單精度float 32位 雙精度double 64位
一種字符類型
字符型char 8位
還有一種布爾型
布爾型:boolean 8位 可存儲(chǔ)"True"和"false"。
String本身就是一個(gè)對象而不是基本數(shù)據(jù)類型,String的變量名是對String類的引用。
2.字符串的操作:
寫一個(gè)方法,實(shí)現(xiàn)字符串的反轉(zhuǎn),如:輸入abc,輸出cba
public static String reverse(String s){
int length=s.length();
StringBuffer result=new StringBuffer(length);
for(int i=length-1;i>=0;i--)
result.append(s.charAt(i));
return result.toString();
}
寫一個(gè)方法,實(shí)現(xiàn)字符串的替換,如:輸入bbbwlirbbb,輸出bbbhhtccc。 String s = "bbbwlirbbb";
s.replaceAll("wlirbbb","hhtccc");
3.數(shù)據(jù)類型之間的轉(zhuǎn)換
如何將數(shù)值型字符轉(zhuǎn)換為數(shù)字(Integer,Double)
使用Integer.parseInt()和Double.parseDouble()方法。
如何將數(shù)字轉(zhuǎn)換為字符
class my
{
int a=12;
Label label=new Label();
label.setText(String.valueOf(a));
}
如何取小數(shù)點(diǎn)前兩位,并四舍五入。
System.out.println("四舍五入取整:(3.856)="
+ new BigDecimal(i).setScale(2, BigDecimal.ROUND_HALF_UP));
java實(shí)習(xí)生面試題2
1.日期和時(shí)間
如何取得年月日,小時(shí)分秒
Date dat=new Date();
dat.getYear(); dat.getMonth(); dat.getDay(); dat.getHours(); dat.getMinutes(); dat.getSeconds();
如何取得從1970年到現(xiàn)在的毫秒數(shù)
long now=dat.getTime();
如何獲取某個(gè)日期是當(dāng)月的最后一天
DateFormate df=DateFormate.getInstance();df.Format(dat);
如何格式化日期
DateFormate df=DateFormate.getInstance();
df.Format(dat);
2.數(shù)組和集合
數(shù)組與集合的區(qū)別:一:數(shù)組聲明了它容納的元素的類型,而集合不聲明。這是由于集合以object形式來存儲(chǔ)它們的元素。二:一個(gè)數(shù)組實(shí)例具有固定的大小,不能伸縮。集合則可根據(jù)需要?jiǎng)討B(tài)改變大小。三:數(shù)組是一種可讀/可寫數(shù)據(jù)結(jié)構(gòu)沒有辦法創(chuàng)建一個(gè)只讀數(shù)組。然而可以使用集合提供的ReadOnly方 只讀方式來使用集合。該方法將返回一個(gè)集合的只讀版本。
3.文件和目錄(I/O)操作
如何列出某個(gè)目錄下的所有文件
如何列出某個(gè)目錄下的所有子目錄
判斷一個(gè)文件或目錄是否存在
如何讀寫文件
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
public class FileOpreate {
public static void main(String [] args)
{
FileOpreate fo=new FileOpreate();
try
{
//文件的寫入
/*String[] testStr=new String[50];
for(int i=0;i<testStr.length;i++)
{
testStr[i]="我的測試數(shù)據(jù)00"+i;
}
fo.writeFile("D:\\","test.txt",testStr);
*/
//文件的寫入
/*String str="測試";
fo.writeFile("D:\\","test001.txt",str);*/
//創(chuàng)建或者刪除文件
/*if(fo.createAndDeleteFile("D:\\","test001.txt"))
{
fo.createAndDeleteFile("D:\\","test002.txt");
}*/
//創(chuàng)建或者刪除文件夾
/*fo.createAndDeleteFolder("D:\\","2009-07-06");*/
//輸出一個(gè)文件內(nèi)的文件名稱
/*fo.readFolderByFile("D:\\");*/
//判斷一個(gè)文件是否是空的
/*fo.fileIsNull("D:\\","test002.txt");*/
//讀取全部的文件內(nèi)容
/*fo.readAllFile("D:\\","test.txt");*/
//一行一行讀取文件內(nèi)容
fo.readLineFile("D:\\","test.txt");
}
catch(Exception e)
{
e.printStackTrace();
}
}
java實(shí)習(xí)生面試題3
1.Java多態(tài)的實(shí)現(xiàn)(繼承、重載、覆蓋)
多態(tài)可分為:
1)編譯多態(tài):主要是體現(xiàn)在重載,系統(tǒng)在編譯時(shí)就能確定調(diào)用重載函數(shù)的哪個(gè)版本。
2)運(yùn)行多態(tài):主要體現(xiàn)在OO設(shè)計(jì)的繼承性上,子類的對象也是父類的對象,即上溯造型,所以子類對象可以作為父類對象使用,父類的對象變量可以指向子類對象。因此通過一個(gè)父類發(fā)出的方法調(diào)用可能執(zhí)行的是方法在父類中的實(shí)現(xiàn),也可能是某個(gè)子類中的實(shí)現(xiàn),它是由運(yùn)行時(shí)刻具體的對象類型決定的。
2.編碼轉(zhuǎn)換,怎樣實(shí)現(xiàn)將GB2312編碼的字符串轉(zhuǎn)換為ISO-8859-1編碼的字符串。
String str = new String("字符串".getBytes("GB2312"),"ISO-8859-1");
3.使用StringBuffer類與String類進(jìn)行字符串連接時(shí)有何區(qū)別?
JAVA平臺(tái)提供了兩個(gè)類:String和StringBuffer,它們可以儲(chǔ)存和操作字符串,即包含多個(gè)字符的字符數(shù)據(jù)。這個(gè)String類提供了數(shù)值不可改變的字符串。而這個(gè)StringBuffer類提供的字符串進(jìn)行修改。當(dāng)你知道字符數(shù)據(jù)要改變的時(shí)候你就可以使用StringBuffer。典型地,你可以使用StringBuffers來動(dòng)態(tài)構(gòu)造字符數(shù)據(jù)。
4.談?wù)刦inal, finally, finalize的區(qū)別。
final 用于聲明屬性,方法和類,分別表示屬性不可變,方法不可覆蓋,類不可繼承。 finally是異常處理語句結(jié)構(gòu)的一部分,表示總是執(zhí)行。
看了“java實(shí)習(xí)生面試題”