悲催的又要開始找工作了。從今天開始,遇到好的面試題就記下來給大家分享一下。
今天的收穫還是不錯的,雖然杯具了,但那公司的面試題目有點意思。其實很多都是基礎,抽象類啊,繼承過載啊,可是以前都不怎麼重視。現在開始,不懂的面試題都要記下來,回來後找解決方法。
1 題目要求差不多是這樣:完成下面的方法,要求返回乙個驗證碼,並且不能同時存在容易混淆的0和q。每個字母取得的概率要相同。
他先給出了一部分**:
//////生成乙個隨機驗證碼,並且不能同時出現容易混淆的0和o
/// ///
///private
static
string createcode(int
count)
只給五分鐘時間,nnd,當時一直在想著怎麼用while迴圈。其實正確的應該是do..while迴圈。下面是回來後自己加的**:
#region 在這裡完善你的**do}while ((validatecode.contains("
0") && validatecode.contains("
o")));
#endregion
2 乙個選擇題,寫了乙個類:
publicclass
classa
public
classa()
}
然後求下面**的輸出結果:
classa a1 = newclassa();
classa a2 = new
classa();
console.writeline(classa.count);
當時選的是1,回來後自己上機驗證了乙個是3!因為靜態建構函式是屬於類的,而不屬於任何乙個例項,所以這個建構函式只會被執行一次,而且是在建立此類的第乙個例項或引用任何靜態成員之前,由.net自動呼叫。
3 也是乙個選擇題。主要是考override與new的區別,題目大概如下:
abstractpublic
class
baseclass
}public
class
class1 : baseclass
}public
class
class2 : baseclass
}
然後求執行下面**後的輸出結果:
baseclass ct2 = newclass2();
ct2.print();
答案會是:from baseclass.因為new關鍵字只是隱藏了class2中baseclass的print()方法,並沒有改變baseclass中的print()方法。
而baseclass ct2 = new
class2() 例項化的是baseclass.
但如果呼叫的是:
classa a1 = newclassa();
ct1.print();
輸出會是:from class1。因為override關鍵字在class1中將baseclass中的print()方法進行了重寫。
4 資料庫題目。用乙個update方法更新兩個條件不同的記錄。大意是這樣的:修改product表,將price大於1000的產品的price提高5%,將price小於1000的產品的price提高10%,要求只用乙個update。
當時沒有想到用case..when語句,好吧,一切都太遲了。
update product set unitprice=(case when (unitprice>1000) then unitprice*1.05 when (unitprice<1000) then unitprice*1.1else unitprice end)
5 求輸出結果
classprogram
}public
class
a
public
virtual
void
write()
}public
class
b : a
}public
class
c : b
public
override
void
write()
}
答案:3
6 求輸出結果
int a = 5;
int b = a++;
console.writeline(b);
int c = ++a;
console.writeline(c);
答案: 5,7
6 求輸出結果
classprogram
static
void sayhello(string
s)
", s);
}static
void saygoobye(string
s)
", s);
}}
答案:hello a
goobye b
hello c
goobye c
hello d
7 介面與抽象類的區別
記一下今天的面試
稀里糊塗的去面試了一家公司的php職位,記錄一下,不知道會不會有戲,自己還是比較喜歡這個職位的。前後兩撥人面的,剛開始兩個人,問了幾個問題 印象深的是如果乙個頁面訪問量特別大,應該怎麼處理,三言兩語說了一點。然後給了乙份題做,我做到一半,又過來一哥們,問了我幾個問題,主要是兩個問題,php怎麼樣把乙...
Java陣列面試題請教一下?
下面哪個陣列定義是錯誤的。並對錯誤的答案加上單行注釋,寫出錯誤的原因。a,float new float 3 b,float f2 new float c,float f1 new float 3 d,boolean b e,double f4 f,int f5 new int 3 g,float ...
華為的面試題 ,大家看一下
typedef int pint define pint int 那麼 const pint p p不可更改,但p指向的內容可更改 const pint p p可更改,但是p指向的內容不可更改。上面說的對嗎?答案const pint p1 p1不可更改,但p1指向的內容可更改 const pint ...