91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

.net常見面試題有哪些

發布時間:2022-03-24 13:56:32 來源:億速云 閱讀:164 作者:iii 欄目:大數據

這篇“.net常見面試題有哪些”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“.net常見面試題有哪些”文章吧。

1.什么是.NET?什么是CLI?什么是CLR?IL是什么?

(1).net用于代碼編譯和執行的集成托管環境,換句話,它管理應用程序運行的方方面面,包括首次運行的編譯,為程序分配內存

存儲數據和指令,對于應用程序授予或拒絕相應的權限,并啟動管理應用程序的執行,剩余內存的在分配。由于所有.net應用程序

都是在.net framework上面執行,所以開發人員只需考慮與.net framework打交道,而不必關系和底層操作系統上面的實現

包括CLR和BCL

(2).CLI(common language infrastructure)公共語言基礎結構,一項國際性的標準,沒有規定標準具體如何實現。相反,它描述了一個

CLI平臺在符合標準的前提下應該具有什么行為。包含了:運行時(CLR),公共中間語言(CIL),公共類型系統(CTS),

公共語言規范(CLS),元數據(Metadata),框架(framework)

(3)CLR:公共語言運行時,負責加載和運行程序 IL:中間語言,C#編譯器將C#代碼轉換成IL,運行時能夠理解IL,并編譯成機器碼

2.JIT是什么,它是如何工作的?GC是什么,簡述一下GC的工作方式?

JIT:Just in time,C#或者是VB.NET的代碼首先被編譯為IL存儲在本地,當要運行這些代碼的時候,CLR對IL進行第二次編譯轉換成機器碼運行。好處:可移植性,而且IL在加載到內存中時將受到類型安全性方面檢查,這實現了更好的安全性和可靠性。

GC:垃圾回收(garbage collection),是根據程序的需要自動分配和回收內存的過程。垃圾回收器處理的是引用對象,而且只回收堆上的內存。這意味著假如維持對一個對象的引用,就會阻止GC重用對象使用的內存。在.NET中,垃圾回收器采用的是mark-and-compact算法。在一次垃圾回收周期開始的時候,它要識別對象的所有跟引用,根據這個引用可以遍歷每個根引用所標識的一個樹形結構,并遞歸確定所有引用指向的對象。這樣一來,垃圾回收器就可以識別所有可達的對象,在執行回收的時候,GC不是枚舉所有訪問不到的對象,相反,通過壓縮所有相鄰的可達的對象來執行垃圾回收。不可訪問的對象就會被覆蓋。垃圾回收的宗旨是提高內存的利用率,它并不是用來清理文件句柄,和數據庫連接字符串,端口或者其他有限的資源(終接器finalizer,不能被顯示調用,不能傳遞任何參數,即不能被重載,只有垃圾回收器才能調用終接器,使用Using語句進行確定性終結

3.類(class)和結構(struct)的區別是什么?它們對性能有影響嗎?

1. 值類型與引用類型

結構是值類型:值類型在棧上分配地址,所有的基類型都是結構類型,例如:int 對應System.int32 結構,通過使用結構可以創建更多的值類型

類是引用類型:引用類型在堆上分配地址堆棧的執行效率要比堆的執行效率高,可是堆棧的資源有限,不適合處理大的邏輯復雜的對象。所以結構處理作為基類型對待的小對象,而類處理某個商業邏輯因為結構是值類型所以結構之間的賦值可以創建新的結構,而類是引用類型,類之間的賦值只是復制引用

注:1.雖然結構與類的類型不一樣,可是他們的基類型都是對象(object),c#中所有類型的基類型都是object

2.雖然結構的初始化也使用了New 操作符可是結構對象依然分配在堆棧上而不是堆上,如果不使用“新建”(new),那么在初始化所有字段之前,字段將保持未賦值狀態,且對象不可用

2.繼承性

結構:不能從另外一個結構或者類繼承,本身也不能被繼承,雖然結構沒有明確的用sealed聲明,可是結構是隱式的sealed .

類:完全可擴展的,除非顯示的聲明sealed 否則類可以繼承其他類和接口,自身也能被繼承注:雖然結構不能被繼承 可是結構能夠繼承接口,方法和類繼承接口一樣

3.內部結構:

結構: 沒有默認的構造函數,但是可以添加構造函數沒有析構函數沒有 abstract 和 sealed(因為不能繼承)不能有protected 修飾符可以不使用new 初始化在結構中初始化實例字段是錯誤的

類: 有默認的構造函數 有析構函數 可以使用 abstract 和 sealed 有protected 修飾符必須使用new 初始化

以上就是關于“.net常見面試題有哪些”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

信阳市| 香港| 隆尧县| 麦盖提县| 汪清县| 佛学| 保康县| 洮南市| 海阳市| 清徐县| 东安县| 合作市| 信阳市| 广南县| 城市| 和硕县| 穆棱市| 六盘水市| 突泉县| 齐齐哈尔市| 湟中县| 吴旗县| 雅江县| 建水县| 麻江县| 丹棱县| 左贡县| 十堰市| 安新县| 基隆市| 乐山市| 金门县| 永靖县| 金华市| 双辽市| 资阳市| 吉林市| 广水市| 宁蒗| 兴安盟| 正安县|