面試題3與面試題4

面試題3

1.下面哪些是Thread類的方法( )

start()  B  run()  C exit() D  getPriority()
 
start ():這個方法的做用就是通知線程規劃器此現場能夠運行了。要注意,調用start方法的順序不表明線程啓動的順序,也就是cpu執行哪一個線程的代碼具備不肯定性。。
run()這個方法是線程類調用start後執行的方法,若是在直接調用run而不是start方法,那麼和普通方法同樣,沒有區別。
getPriority()和 setPriority(int newPriority)這兩個方法是用於獲取當前和設置線程的優先級。優先級高的線程獲得的cpu多。也就是說,兩個等待的線程,優先級高的線程容易被cpu執行。默認狀況下,線程的優先級是5。線程的優先級分爲1~10等級。
 

2. 下面程序的運行結果是( )

String str1 = "hello":
String str2= "he" + new String('llo"); //這句話會被優化成 String str2 = new String("hello");
System. out. printIn(str1 == str2);
false

拓展 String str3 = "he"+"llo";
sout(str2==str3);
false
注意直接打引號的在字符串常量池中,new 的在堆中
 

3.下列說法正確的有()

A. class中的constructor不可省略(默認省略,自帶空參構造)
B. constructor必須與class同名,但方法不能與class同名(成員方法能夠與類名相同)
C. constructor 在一一個對象被new時執行
D.一個class只能定義一個constructor(空參構造和有參構造,多個)
4.下面程序的運行結果: ()
 1 public class ThreadMain {
 2     public static void main(String[] args) {
 3         Thread t  = new Thread(){
 4             public void run(){
 5                 pong();
 6             }
 7         };
 8         t.run();
 9         System.out.println("ping");
10     }
11     static void pong(){
12         System.out.println("pong");
13     }
14 }

A pingponghtml

B pongping
C pingpong和pongping都有可能
D都不輸出

5.下列屬於關係型數據庫的是( )
A.  Oracle  MySqI  C IMS  D MongoDB
 
6. 0.6332的數據類型是( )
 
A. float  B. double  C. Float

7.下面哪一個流類屬於面向字符的輸入流( )
A BufferedWriter  
B FileInputStream
C 0bjectInputStream
D InputStreamReader

備註:以XXXXStream 爲結尾的都是字節流,以XXXXWriter XXXReader爲結尾的都是字符流。

固然了流只能用流初始化。在作某些判斷題的時候頗有用。
 
8. 下面哪些是對稱加密算法?
A. DES B. AES C. DSA D. RSA
 
9. Nginx的root和alisa有什麼區別?

  連接:https://www.cnblogs.com/Narule/p/10130861.htmljava

  alias 訪問路徑 截取程序員

  root 訪問路徑 拼接面試

 

10.如何提升spring API接口的吞吐量?
連接:https://blog.csdn.net/liuchuanhong1/article/details/78744138
使用異步請求機制來提升。
(1)使用callable異步調用
 
(2)使用WebAsyncTask異步調用
 
(3)使用Deferred異步調用。
 
 
 面試題4
1.下列說法正確的是()
A、class中間的constructor不能夠省略
B、constructor必須與class同名,可是方法不能與class同名
C、constructor在一個對象被new的時候執行
D、一個class只能定義一個constructor
 
2.下列書佛啊正確的是(
A、LinkedList繼承自List
B、AbstractSet繼承自Set
C、HahsSet繼承自AbstractSet
D、WeakMap繼承自HashMap
 
3.下列哪一個不是表單標記()
A、input
B、radio
C、CheckBox
D、TR
 
4.下面關於垃圾收集的說法正確的是()
A、一旦一個對象成爲垃圾,就會馬上被收集掉。
B、對象空間被收集掉以後,會執行該對象的finalize方法
C、finalize方法和C++的析構函數是徹底一回事情
D、一個對象成爲垃圾是由於再也不有引用指着他,可是線程並不是如此。
 
5.ArrayList list = new ArrayList(20);中的list擴充了幾回()
A、0 (真正有值添加進去的時候纔會擴容)
B、1
C、2
D、3
 
 6.下列程序的執行結果爲()
 1 public class IOTest {
 2     public static void main(String[] args) {
 3         String s = "1234567890abcdefghijklmnopq";
 4         byte[] b= s.getBytes();
 5         try{
 6             File f = new File("B.txt");
 7             FileOutputStream outputStream = new FileOutputStream(f);
 8             outputStream.write(b,10,10);;
 9             outputStream.write(b,0,5);
10         }catch (IOException e){
11             System.out.println(e.getMessage());
12         }
13     }
14 }

A、拋出一個能夠捕獲的IOExceptionredis

B、編譯正常,而且生成B.txt,文件內容爲abcdefghij12345算法

C、編譯正常,可是運行時出現錯誤spring

D、編譯正常,可是屏幕沒有任何輸出。sql

 

7.使用mkdir建立一個臨時文件夾tmp/aaa,將一些文件複製其中,使用完畢後要刪除/mnt/tmp中的文件夾和全部的文件,應該使用命令()數據庫

A、rm /tmp/aaa設計模式

B、rm -r /tmp/aaa

C、rmdir -r /tmp/aaa

D、rmdir /tmp/aaa

 
8.在實現DAO設計模式時,下面哪一種設計模式常常被採用()
A、Proxy模式
B、Factory模式
C、Protype模式
D、Observer模式
 
9.要從文件「file.dat」中讀取第十個字節到變量C中,下面那個方法更適合()
A、FileInputStream in=new FileInputStream("file.dat");in.skip(9);int c=in.read( );
B、FileInputStream in=new FileInputStream("file.dat");in.skip(10);int c=in.read( );
C、FileInputStream in=new FileInputStream("file.dat");int c=in.read( );
D、RandomAccessFile in=new RandomAccessFile("file.dat");in.skip(9);int c=in.readByte( );
 
10.假設test類運行於多線程環境下,那麼關於A處的同步下面描述正確的是()
1 public class Test {
2   List list= new java.util.ArrayList();
3   public void test() {
4     synchronized ( list) { // --A
5       list.add( String.valueOf(System.currentTimeMillis()));
6     }
7   }
8 }
A、 test方法中必須增長synchronized
B、Test類爲singleton時有必要增長synchronized
C、 test方法中沒有必要增長synchronized
D、 Test類爲singleton時也沒有必要增長synchronized
 
11.下列哪項不是JSP操做指令()
A、getProperty
B、forward
C、include
D、import
 
12.下面哪項不是response對象的方法()
A、setContentType(String contentTypestr)
B、setHeader(String headername,String headervalue)
C、getParameter(String str)
D、sendError(int errorcode
 
2、填空題
1. MySQL的事物隔離級別: 一致性,原子性,隔離性,持久性
2.在開發中寫出4個能使用throw拋出的異常:(Exception下的子類均可以拋)
IOException,ClassNotFoundException,DataFormatException,illegalAccessException,NoSuchFieldException
3.寫出Mysql中常見的四種索引: 主鍵索引/普通索引/全文索引/惟一索引
4.說說線程安全的三種實現方式: 同步代碼塊,同步方法,LOCK鎖機制
5.請解釋Linux系統下常見命令 
echo:輸出  ls:顯示 cp:複製 rm:刪除
 
3、簡答題
1.集羣環境中,session如何實現共享?

1).粘性session

粘性session是指Ngnix每次都將同一用戶的全部請求轉發至同一臺服務器上,即將用戶與服務器綁定。

2).服務器session複製

即每次session發生變化時,建立或者修改,就廣播給全部集羣中的服務器,使全部的服務器上的session相同。

3).session共享

緩存session,使用redis, memcached。

4).session持久化

將session存儲至數據庫中,像操做數據同樣才作session。

其實,最簡單的兩種方案,就是方案一和方案三,都不須要對session進行任何操做,只須要將Nginx和Tomcat上的配置文件修改一下便可。

原文:https://blog.csdn.net/qq_34666857/article/details/77112985

2.一個表中的id有多個記錄,把這個id的記錄查出來,並顯示共有多少條記錄

用查詢語句解:

1 select *,count(*) as 記錄數 from test where id =1 group by id;

 

用視圖解:

1 create view v_countNum as select id ,count(*) as countNum from test GROUP BY id;
2 
3 select countNum from v_countNum where id =1;

 

3.如何看待設計模式,並簡單說說你對觀察者模式的理解。
設計模式讓程序員保持在涉及層次上,不會糾結於對象與類這種瑣碎的事情。方便團隊溝通想法,交流的不只僅是模式名稱,而是一整套模式背後所象徵的質量,特性、約束。
觀察者模式:在對象之間地靈異一對多的依賴,這樣一來,當一個對象改變狀態,依賴他的對象的偶會收到通知而且自動更新。
 
4.你的接口服務數據被人載包了,如何方式主數據惡意提交?
咱們能夠在接口傳輸參數裏面設置一個業務編號,這個編號用來區分是否重複提交。這樣即便數據被抓包了,對方也沒法區分每一個字段你的含義,這時,這個業務編號的做用就來了
相關文章
相關標籤/搜索