本系列本章來至於
1.try{} 裡面有個return語句,那麼緊跟try後面的finally{}會不會執行?
答案:會執行,在return後執行
我的記憶方法如下
public static int executenonquery(string connstr, string sql)
catch
finally
}這屬於幫助記憶型,最好還是弄懂原理
2.using有什麼用.
答:很多同學看到這個就笑了,不就是namespace的引用嘛,殊不知,出題人正在等你更精彩的回答呢。
using還可以實現非託管資源的釋放,實現了idisposiable類在using中建立,using結束後會自動呼叫dispose方法**資源,其等價於try...finally
以上可以參考:
這個時候面試官就笑了,綿裡藏針的問,什麼是非託管資源,託管資源.這個時候接不上就暴露了背書了吧。
託管資源:一般是指被clr控制的記憶體資源,這些資源由clr來管理。可以認為是.net 類庫中的資源。
非託管資源:不受clr控制和管理的資源,比如檔案流,資料庫的連線,網路連線,系統的視窗控制代碼,印表機資源等,這類資源一般不存在堆上。可以認為作業系統資源的一組api。
對於託管資源,gc負責垃圾**。對於非託管資源,gc可以跟蹤非託管資源的生存期,但是不知道如何釋放它,這時候就要人工進行釋放。
然後面試官就會繼續問gc**機制巴拉拉一大推了,直到你回答不上來為止.
3.readonly 同const區別
是不是又被簡單到了?
首先先解釋下什麼是靜態常量以及什麼是動態常量。靜態常量是指編譯器在編譯時候會對常量進行解析,並將常量的值替換成初始化的那個值。而動態常量的值則是在執行的那一刻才獲得的,編譯器編譯期間將其標示為唯讀常量,而不用常量的值代替,這樣動態常量不必在宣告的時候就初始化,而可以延遲到建構函式中初始化。
基本了解以上後,就可以對號入座了。const修飾的常量是上述中的第一種,即靜態常量;而readonly則是第二種,即動態常量。那麼區別可以通過靜態常量與動態常量的特性來說明
1)const修飾的常量在宣告的時候必須初始化;readonly修飾的常量則可以延遲到建構函式初始化
2)const修飾的常量在編譯期間就被解析,即常量值被替換成初始化的值;readonly修飾的常量則延遲到執行的時候
此外const常量既可以宣告在類中也可以在函式體內,但是static readonly常量只能宣告在類中。
以上摘自:
C 面試前的準備 基礎知識點的回顧 05
1.談談viewstate 這個問題,回答的好,工資翻一級 基本上浮現在出來的是,它是什麼,具體談論的東西我就不一一細說了,只能說根據自己的學識去 千萬不要背書,很容易露餡,露餡的話給人一種不懂裝懂的感覺,反而不好。三連擊 注意文章中提到了asp.net頁面生命週期,這個要是能闡述清楚,又是乙個質的...
面試前的準備 C 知識點回顧 01
過完年來,準備找份新工作,雖然手裡的工作不錯,但樹挪死,人挪活。咱不能一直在乙個坑里生活一輩子,外面的世界畢竟是很美好的。為了能正常的找到自己中意的工作,最近是將所有的基礎知識拿出來複習了一次。僅作記錄,自勉,各位大神不要噴,隨意看看就好了。以下知識點,均摘自面試過程中遇到的題 1.try 裡面有個...
c 基礎,面試前迅速鞏固c 最基礎知識點
n年前為了面試,蒐羅的c 基礎知識,記在了文件裡。今天寫到裡,與人分享,因為不是專家,所以僅供參考。1.物件導向 在物件導向概念提出之前,語言都是面向過程的,說到物件導向,應該與面向過程比較,這樣理解會更清晰。顧名思義,面向過程強調的是過程,物件導向強調的是物件。下面通過 關門 這個例子,說明兩者的...