面試之道---面試感慨css
又到了一年一度的畢業季,博主也如此,面臨着找工做的困境,因爲學藝不算太精通,面試的過程當中屢敗屢戰,當面試官說出那句:「你回去等通知吧,咱們大概會在兩、三天以內會給你回覆,剛開始聽到這句話時,會以爲本身還有但願,因而抱着一點但願靜靜的等待,到後來才發現,原來我只是一個備胎。前端
面試之道---公司介紹mysql
首先,面試以前你得了解這個公司的背景,以及公司的業務等相關的問題。jquery
「對面」是一款領先新型的遊戲化社交產品,隸屬於深圳市樂惟科技開發有限公司。android
深圳市樂惟科技開發有限公司,設立於2011年,是一家年輕而充滿朝氣和活力的高科技技術創新型企業,管理層以及員工主要以80後、90初爲主,發展迅猛,致力於手機應用、遊戲等產品的開發,涉足iphone,android主流手機操做平臺!咱們有着深厚的手機軟件開發的技術積累,以及強大的產品創新能力!立志爲廣大用戶提供最優秀和便捷的移動互聯網軟件產品和服務。面試
面試之道---公司印象ajax
面試的這家公司是位於深圳繁華軟件的集中區域---南山軟件基地,開始進入此大廈的時候,還須要身份證登記,若是有要去這家公司面試的小夥伴,請攜帶好本身的身份證,以後上了電梯,向右一看,」嘿,對面的你「(Ps:由於樂惟科技主要是弄遊戲社交平臺的),我當時的第一反應是,約嗎? 額。。。 以後進入了公司裏,這公司整體來講仍是不錯的,公司的前臺是一個圓形的鵝蛋佈局,前臺妹子也不錯︿( ̄︶ ̄)︿ 算法
面試之道--面試問題spring
面試問題1:sql
如何實現一個單例模式?
1 //懶漢式單例類.在第一次調用的時候實例化本身 2 public class Singleton { 3 private Singleton() {} 4 private static Singleton single=null; 5 //靜態工廠方法 6 public static Singleton getInstance() { 7 if (single == null) { 8 single = new Singleton(); 9 } 10 return single; 11 } 12 }
以上是一個簡單的單例模式的demo.
面試問題2:
如何實現一個線程池?(這裏我以單線程池做爲案例)
1 public class TestSingleThreadExecutor { 2 publicstaticvoid main(String[] args) { 3 //建立一個可重用固定線程數的線程池 4 ExecutorService pool = Executors. newSingleThreadExecutor(); 5 //建立實現了Runnable接口對象,Thread對象固然也實現了Runnable接口 6 Thread t1 = new MyThread(); 7 Thread t2 = new MyThread(); 8 Thread t3 = new MyThread(); 9 Thread t4 = new MyThread(); 10 Thread t5 = new MyThread(); 11 //將線程放入池中進行執行 12 pool.execute(t1); 13 pool.execute(t2); 14 pool.execute(t3); 15 pool.execute(t4); 16 pool.execute(t5); 17 //關閉線程池 18 pool.shutdown(); 19 } 20 }
代碼調用部分,這裏我建立了一個MyThread的類
1 publicclass MyThread extends Thread { 2 @Override 3 publicvoid run() { 4 System.out.println(Thread.currentThread().getName() + "正在執行。。。"); 5 } 6 }
代碼執行結果:
pool-1-thread-1正在執行。。。 pool-1-thread-2正在執行。。。 pool-1-thread-1正在執行。。。 pool-1-thread-2正在執行。。。 pool-1-thread-1正在執行。。。
面試問題3:
10進制的100位進行累加如何實現?
首先,博主數學是渣,對於什麼數據結構,算法什麼的無感,還有進制這些也不是很瞭解,因此當時面試的時候就陷入了一種懵逼狀態 ..(ˇˍˇ) 想~ ,可是博主仍是熱愛學習的好孩子,迫於下次面試遇到相似的問題,我仍是得去研究,研究,在研究。。
這是10進制的100位的算法
100÷2=50。。。。餘0
50÷2=25。。。。餘0
25÷2=12。。。。餘1
12÷2=6。。。。餘0
6÷2=3。。。。餘0
3÷2=1。。。。餘1
1÷2=0。。。。餘1
把餘數倒過來排列便是十進制100轉二進制。
即十進制100轉二進制是1100100
下面的代碼是博主想出的解決方案,若有什麼地方有問題的話,能夠在評論的下方提出解決方案:
1 package com.pb.entity; 2 3 public class Test { 4 public static void main(String[] args) { 5 //定義字符進行進制的累加 6 String str = ""; 7 //初始化變量是從100開始的 8 int num=100; 9 while(true){ 10 //對餘數進行累加 11 str+=num%2; 12 //保證num的值是變化的 13 num = num/2; 14 //加入判斷,遍歷完變量以後退出循環 15 if(num==0){ 16 break; 17 } 18 } 19 //逆序讀取字符串中的數據 20 System.out.println("最後的結果是:"+new StringBuilder(str).reverse().toString()); 21 } 22 }
最後的輸出結果:
最後的結果是:1100100
面試之道---面試總結
經過這兩次的面試我明白了,常問的知識點有:設計模式(單例、代理、工廠、觀察者...等模式)、框架(spring、mybatis、ibatis、struts、hibernate ...)、數據庫(mysql、sql server、oracle)會問一些sql和存儲過程、其次是前端的一些技術:如js、jquery、ajax、json以及h5+css的使用.. 也但願可以給正在面試的小夥伴們帶來一些幫助。
做者:薛之段王爺
博客:http://home.cnblogs.com/u/xzdwy-b/(轉載請註明)