真實面試題之二

簡答題:java

1String s = new String("xyz");建立了幾個String Object?linux

 

答:new String()建立了一個對象,放在隊中,建立的字符串自己放在了字串池中。因此建立了兩個對象。redis

 

二、數組有沒有length()這個方法? String有沒有length()這個方法?sql

答:數組中有length屬性,沒有這個方法。數據庫

 

 

3sleep(1000)  wait(1000) 有什麼區別? 編程

答:sleep是針對線程阻塞,wait是對象的方法,因此只要使用這個對象就會發生阻塞。數組

 

 

 

四、說一說servlet的生命週期。緩存

 

答:建立,初始化,執行,銷燬安全

 

 

五、什麼是Singleton模式,有什麼做用。 編程實現一個單列類。oracle

 

答:該對象只建立一次,能夠反覆進行使用。

/**

 * 雙檢查鎖[單例模式]

 * 優勢:在synchronized加if,保證了線程安全,比直接上鎖提升了執行效率

 * @author DELLL

 *

 */

public class Test01 {

private static Test01 test01;

private Test01() {}


public static Test01 getTest01() {

if(test01 == null) {

synchronized (Test01.class) {

if(test01 == null) {

test01 = new Test01();

}

}

}

return test01;

}

}

 

 

 

 

 

6如下程序代碼輸出的變量i的值爲多少?

public class Test {

public static void main(String[] args) {

int i = 99;

add(i);

System.out.println(i + 100);

}


public static void add(int i){

i += 100;

}

}

 

 

答:199.

 

 

論述題:

 

1、某http形式的接口系統,日均訪問量3000W次。管理人員但願能監控到每分鐘的訪問量,經討論計劃在接口中加入一計數器。要求該技術器最大限度的不影響系統性能。請你實現該技術器。

 

答:訪問量這個數據是不停變化的,能夠現將數據放入到redis中,隔一段時間從redis中進行訪問,應爲這個數據不是特別的重要,訪問數據的時候也是從redis中進行訪問,若是說redis的緩存失效了能夠從數據庫中進行訪問。

 

 

 

 

 

2java Oracle編程中爲何要綁定變量?對oracle的大表操做須要注意些什麼?

 

1. 爲何使用綁定變量:

(1) 執行sql語句的過程:語法檢查,分析,執行,返回結果

(2) 分析分爲硬分析和軟分析

① 

 

 

 

 

3、代碼:

java.util.concurrent.ThreadPoolExecutor threadPool = new java.util.concurrent.ThreadPoolExecutor(5,

            8,

            30,

            TimeUnit.SECONDS,

            new ArrayBlockingQueue(200),

            new  java.util.concurrent.ThreadPoolExecutor.CallerRunsPolicy());

}

請描敘new ThreadPoolExecutor對象各參數的含義。

答:

corePoolSize - 即便空閒時仍保留在池中的線程數,除非設置 allowCoreThreadTimeOut 

maximumPoolSize - 池中容許的最大線程數

keepAliveTime - 當線程數大於核心時,這是多餘的空閒線程在終止以前等待新任務的最大時間。

unit - keepAliveTime參數的時間單位

workQueue - 在執行任務以前用於保存任務的隊列。 該隊列將僅保存execute方法提交的Runnable任務。

 

 

 

 

 

 

 

4、請描敘 java.util.concurrent.atomic包的做用。列舉你熟悉的幾個該包下的類。

 

1. AtomicBoolean

2. AtomicInteger

3. AtomicLong

 

 

 

 

 

 

5、簡敘Apache MINA的特性。

 

 

 

六、 寫出10個熟悉的linux命令

1. cd

2. Ls

3. Cat:查看文件內容

4. Rm:移動

5. Mkdir:建立文件夾

(1) Rmdir:刪除文件夾

6. Cp: 複製

7. Kill:結束進程

8. Vim:文本編輯

(1) Wq:保存離開

9. Pwd:查看當前路徑

10. Ps:查看進程

11. Tar -zxvf:解壓

12. Systemctl stop firewalld service:關閉防火牆

 

 

 

七、 HTTP協議請求頭部包含哪些信息

1. Accpet-Charset:可接受的字符集

2. Accpet-Encoding:可接受的內容的編碼方式

3. Authorization:HTTP協議中須要認證資源的認證信息

4. Cache-Control:當前的請求是否使用緩存機制

5. Cookie:設置Cookie的信息

6. Content-Type:請求體的響應類型

 

 

 

八、 你經常使用的Web開發調試工具都有哪些

1. Postman,Idea

相關文章
相關標籤/搜索