面試題--這是我在面試過程中收集整理的面試題

1.java的基本數據類型及其封裝類
①int——Integer    ②byte——Byte
③short——Short ④long——Long
⑤double——Double
⑥char——Character
⑦float——Float⑧boolean——Boolean
2.數組有length()嗎?String有length()方法嗎?
答案:數組對象是沒有任何方法的,只有一個唯一的屬性length,你是剛開始學的吧,呵呵
數組只能array.length,返回的是該數組的長度

字符串對象是有length方法的。str.length()返回的是該字符串總的字符個數
3.多態的理解
答案:多態存在的三個必要條件
一、要有繼承;
二、要有重寫;
三、父類引用指向子類對象。
方法的重寫和重載是Java多態性的不同表現。
重寫是父類與子類之間多態性的一種表現。
重載是一個類中多態性的一種表現。
4.forward和redirect的區別
答案:
轉發和重定向的區別:
轉發的作用:在多個頁面交互過程中實現請求數據的共享
轉發的實現:
RequestDispatcher對象
forward()方法
轉發是在服務器端發揮作用,通過forward方法將提交信息在多個頁面間進行傳遞。
轉發是在服務器內部控制權的轉移,客戶端瀏覽器的地址欄不會顯示出轉向後的地址

重定向是在客戶端發揮作用,通過請求新的地址實現頁面轉向
重定向是通過瀏覽器重新請求地址,在地址欄中可以顯示轉向後的地址

5.接口能實現/繼承接口嗎?抽象類能繼承接口嗎?抽象類能能繼承實現類嗎?
6.重寫和重載的區別?
答案:1.重寫必須繼承,重載不用。 
2.重寫的方法名,參數數目相同,參數類型兼容,重載的方法名相同,參數列表不同 
3.重寫的方法修飾符大於等於父類的方法,重載和修飾符無關。 
4.重寫不可以拋出父類沒有拋出的一般異常,可以拋出運行時異常。
重寫是父類與子類之間多態性的一種表現。
重載是一個類中多態性的一種表現。
7.try裏有return方法,那麼是在finally{}前,還是後執行?
答案:
最後總結:finally塊的語句在try或catch中的return語句執行之後返回之前執行且finally裏的修改語句不能影響try或catch中return已經確定的返回值,若finally裏也有return語句則覆蓋try或catch中的return語句直接返回。
8.將字符串String s="abc"反轉輸出
答案:
String str = "abc"; String reStr = new StringBuilder(str).reverse().toString();

完整代碼如下:
public class TestString {
public static String reverse(String s){
char []c=new char[s.length()];
for(int i=0;i<s.length();i++)
c[i]=s.charAt(s.length()-1-i);
return String.valueOf(c);
}
public static void main(String[] args) {
String s="abc";
s=reverse(s);
System.out.println(s);
}
}
運行結果;cba
③:
public class a
{
public static void main
{
String str="abc";
StringBuffer sb = new StringBuffer(str);
sb.reverse();
str=new String(sb);
System.out.println(str);
}
}
}
這是最簡單的辦法還可以用toCharArray 轉換成char數組然後在反轉。

import java.util.*;
public class Main{
public static void main(String args[]) throws Exception{
Scanner in = new Scanner(System.in);
String str = in.nextLine(); //輸入一個字符串
char c[] = new char[str.length()]; //定義一個字符數組
for(int i=0;i<str.length();i++){
c[i] = str.charAt(i);
}
for(int i=c.length-1;i>=0;i--) //循環輸出
System.out.print(c[i]); //從倒數第二個字符,向前輸出
}
}

首先給你介紹一個類和一個方法,如下:
StringBulider類就像一個可變長度的字符串數組一樣,內容和長度都可以被改變,既方便又節省開銷。reverse()翻轉StringBulider對象中的字符串。
public class Main{
public static void main(String args[]) throws Exception{
String array="海闊憑魚躍,天高任鳥飛";
StringBuilder sb=new StringBuilder(array);
sb.reverse();
System.out.println(sb);}
}

可用遞歸實現
//s:表示要操作的字符串,size:表示字符串大小
public void writeBackward(String s,int size)
{
if(size>0)
{
System.out.println(s.substring(size-1,size));
writeBackward(s,size-1);
}

}


9.寫出jdbc的連接步驟及其連接語句,並寫出查詢語句。
10.jQuery知識點
11.JavaScipt知識點
12.值傳遞與引用傳遞

13.valueof
答案:比如說有個String str="12345";

substring函數是取一個string子串,如果j=1,那麼str.substring(j+1)就是取從第二位開始的子串,所以str.substring(j+1)等於"345";

valueOf是Integer類的一個靜態方法,它是把一個string參數轉換爲Integer類型,那麼經過Integer.valueOf("345")轉換,345就是一個Integer類型了

最後說這個intValue函數,它是將一個Integer類型轉換成原始類型int,
所以最後len就等於345了。 
 上海傑獅面試題:
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章