<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          上海某國(guó)企社招的.NET面試題,給開8K值嗎?

          共 8790字,需瀏覽 18分鐘

           ·

          2023-06-06 08:29

          ????今天我要分享的是某上海國(guó)企社招的.NET面試題。這些面試題目由網(wǎng)友提供,主要包括筆試題和操作題。還是先列出面試題目,大家先試做一下,然后再看后面答案。

          試題

          1、請(qǐng)解釋什么是面向?qū)ο缶幊蹋∣OP)?

          2、請(qǐng)解釋程序的基本結(jié)構(gòu)是什么,并簡(jiǎn)要描述每個(gè)組成部分的作用。

          3、列舉并解釋幾個(gè)C#中常用的修飾符。

          4、請(qǐng)說明接口和抽象類之間的區(qū)別,并提供一個(gè)使用場(chǎng)景示例。

          5、請(qǐng)列舉并解釋.NET Core和.NET Framework之間的區(qū)別。

          6、Program.cs中builder.Services和var app = builder.Build()的app有什么用?

          7、在.NET Core中,中間件是什么?請(qǐng)解釋它們?cè)谡?qǐng)求處理過程中的作用。

          8、在ASP.NET Core中,如何將服務(wù)依賴注入到控制器中?

          9、在.NET Core中,有哪幾種服務(wù)生命周期?請(qǐng)簡(jiǎn)要描述每個(gè)生命周期的特點(diǎn)。

          10、Cookies和Session有什么區(qū)別?請(qǐng)解釋它們?cè)赪eb開發(fā)中的不同用途。

          操作題:

          11、請(qǐng)用代碼反轉(zhuǎn)這個(gè)字符串:string strTmp= "發(fā)TENTOD";

          12、請(qǐng)用C#代碼計(jì)算某年某月的最后一天是幾號(hào)號(hào)?比如今年二月

          解答

          1、請(qǐng)解釋什么是面向?qū)ο缶幊蹋∣OP)?

          答:面向?qū)ο缶幊蹋∣OP)是一種編程范式,它將程序設(shè)計(jì)組織為一組對(duì)象,這些對(duì)象通過相互之間的交互來完成任務(wù)。OOP的核心思想是將現(xiàn)實(shí)世界中的事物抽象為對(duì)象,每個(gè)對(duì)象都具有狀態(tài)(屬性)和行為(方法),并且可以通過封裝、繼承和多態(tài)來實(shí)現(xiàn)代碼的模塊化、重用性和可擴(kuò)展性。這是比較官方的說法,大家可以用自己的理解回答。

          詳解--> 面試必備:聊聊面向?qū)ο笕筇卣?/span>



          2、請(qǐng)解釋程序的基本結(jié)構(gòu)是什么,并簡(jiǎn)要描述每個(gè)組成部分的作用。

          答:命名空間(Namespace):組織和管理相關(guān)的類和類型。

          類(Class):用于定義對(duì)象的屬性和方法。

          方法(Method):用于定義類中的行為和操作。

          變量(Variable):用于存儲(chǔ)和操作數(shù)據(jù)。

          語句(Statement):用于控制程序的執(zhí)行流程。

          表達(dá)式(Expression):用于計(jì)算和生成值。

          注釋(Comment):用于解釋和說明代碼的作用和用途。

          這是道基礎(chǔ)題,如果長(zhǎng)時(shí)間不面試可能會(huì)蒙。


          3、列舉并解釋幾個(gè)C#中常用的修飾符。

          答:

          public:公共修飾符,表示可以從任何位置訪問。

          private:私有修飾符,表示只能在當(dāng)前類內(nèi)部訪問。

          protected:受保護(hù)修飾符,表示只能在當(dāng)前類及其派生類內(nèi)部訪問。

          internal:內(nèi)部修飾符,表示只能在當(dāng)前程序集內(nèi)部訪問。

          protected internal:受保護(hù)的內(nèi)部修飾符,表示只能在當(dāng)前程序集內(nèi)部和派生類內(nèi)部訪問。

          現(xiàn)在最新版的還有file修飾符,如果能回答出來是加分項(xiàng)

          詳解-->面試必備:聊聊C#中public、private、protected、internal訪問修飾符作用范圍?


          4、請(qǐng)說明接口和抽象類之間的區(qū)別,并提供一個(gè)使用場(chǎng)景示例。

          答:

          接口定義了一組公共的方法和屬性,但不能包含實(shí)現(xiàn)代碼。類可以實(shí)現(xiàn)一個(gè)或多個(gè)接口,從而獲得接口定義的行為。

          抽象類是一個(gè)可以包含實(shí)現(xiàn)代碼和抽象成員的類。抽象類可以被繼承,子類可以實(shí)現(xiàn)抽象成員并提供具體的實(shí)現(xiàn)。

          使用場(chǎng)景示例:

          接口通常用于定義約定和合同,使不同的類能夠以一致的方式進(jìn)行交互。例如,一個(gè)日志記錄接口定義了寫日志的方法,多個(gè)類可以實(shí)現(xiàn)這個(gè)接口來提供不同的日志記錄實(shí)現(xiàn)。

          抽象類通常用于作為具有共同特征的類的基類,提供通用的實(shí)現(xiàn)和行為。子類可以繼承抽象類并擴(kuò)展或覆蓋其中的方法。例如,一個(gè)動(dòng)物抽象類可以定義一個(gè)通用的“移動(dòng)”方法,而子類如狗、貓、鳥等可以具體實(shí)現(xiàn)各自的移動(dòng)方式。

          -->c#中抽象類(abstract)和接口(interface)的相同點(diǎn)與區(qū)別


          5、請(qǐng)列舉并解釋.NET Core和.NET Framework之間的區(qū)別。

          答:

          .NET Core是一個(gè)跨平臺(tái)的開源框架,支持在Windows、macOS和Linux等多個(gè)操作系統(tǒng)上運(yùn)行。它更加輕量級(jí)、模塊化,并且可以選擇性地引用和使用所需的組件。

          .NET Framework是一個(gè)面向Windows操作系統(tǒng)的框架,主要用于Windows應(yīng)用程序開發(fā)。它包含了大量的類庫和功能,適用于各種類型的應(yīng)用程序開發(fā)。

          詳解--> .Net Core、 .Net FrameWork和 .Net 5對(duì)比


          6、Program.cs中builder.Services和var app = builder.Build()的app有什么用?

          答:在Program.cs中,builder.Services 是用于配置和注冊(cè)依賴注入的服務(wù)容器,通過該容器可以向應(yīng)用程序添加各種服務(wù)。而 var app = builder.Build() 是用于構(gòu)建 WebHost 或 Host 對(duì)象,它代表整個(gè)應(yīng)用程序的主機(jī)。


          7、在.NET Core中,中間件是什么?請(qǐng)解釋它們?cè)谡?qǐng)求處理過程中的作用。

          答:在.NET Core中,中間件是一種組件,用于處理HTTP請(qǐng)求和響應(yīng)。中間件在請(qǐng)求管道中按順序執(zhí)行,并可以修改或處理請(qǐng)求和響應(yīng)。它們提供了一種靈活的方式來處理各種功能,例如日志記錄、身份驗(yàn)證、路由等。

          在請(qǐng)求處理過程中,中間件可以執(zhí)行以下操作:

          接收并處理傳入的HTTP請(qǐng)求。

          調(diào)用下一個(gè)中間件或終止請(qǐng)求處理。

          修改請(qǐng)求或響應(yīng)的內(nèi)容。

          執(zhí)行任意自定義邏輯。

          更多面試題-->必考的ASP.NET Core的中間件面試題


          8、在ASP.NET Core中,如何將服務(wù)依賴注入到控制器中?

          答:默認(rèn)在ASP.NET Core中,可以通過構(gòu)造函數(shù)注入(Constructor Injection)的方式將服務(wù)依賴注入到控制器中。通過第三方注入組件可以使用接口注入和屬性注入。

                  
                    public class MyController : Controller
                  
                  
                    {
                  
                  
                    ????private?readonly?IMyService?_myService;
                  
                  
                        public MyController(IMyService myService)
                  
                  
                        {
                  
                  
                            _myService = myService;
                  
                  
                    ????}
                  
                  
                        // ...
                  
                  
                    }
                  
                


          詳解--> 面試疑問:.NET Core依賴注入有三種方式是真的嗎?


          9、在.NET Core中,有哪幾種服務(wù)生命周期?請(qǐng)簡(jiǎn)要描述每個(gè)生命周期的特點(diǎn)。

          答:

          Singleton:服務(wù)在應(yīng)用程序的整個(gè)生命周期中只會(huì)創(chuàng)建一個(gè)實(shí)例,每次請(qǐng)求都會(huì)使用同一個(gè)實(shí)例。

          Scoped:服務(wù)在每個(gè)請(qǐng)求過程中創(chuàng)建一個(gè)實(shí)例,同一個(gè)請(qǐng)求內(nèi)的不同組件將共享同一個(gè)實(shí)例。

          Transient:每次請(qǐng)求都會(huì)創(chuàng)建一個(gè)新的實(shí)例,每次請(qǐng)求都使用不同的實(shí)例。


          10、Cookies和Session有什么區(qū)別?請(qǐng)解釋它們?cè)赪eb開發(fā)中的不同用途。

          答:

          Cookies是在客戶端(瀏覽器)上存儲(chǔ)數(shù)據(jù)的小型文件。它們可以通過瀏覽器自動(dòng)發(fā)送到服務(wù)器,用于識(shí)別和跟蹤用戶會(huì)話。

          Session是在服務(wù)器端存儲(chǔ)用戶狀態(tài)的機(jī)制,可以存儲(chǔ)和檢索用戶特定的數(shù)據(jù)。它使用一個(gè)唯一的會(huì)話標(biāo)識(shí)符(Session ID)來跟蹤用戶的會(huì)話狀態(tài)。

          主要區(qū)別如下:

          存儲(chǔ)位置:Cookies存儲(chǔ)在客戶端,Session存儲(chǔ)在服務(wù)器端。

          大小限制:Cookies的大小通常受到瀏覽器和服務(wù)器的限制,而Session的大小限制一般由服務(wù)器配置確定。

          安全性:Cookies存儲(chǔ)在客戶端,可能會(huì)受到篡改和竊取的風(fēng)險(xiǎn)。而Session存儲(chǔ)在服務(wù)器端,相對(duì)更安全。

          數(shù)據(jù)存儲(chǔ):Cookies可以存儲(chǔ)簡(jiǎn)單的鍵值對(duì)數(shù)據(jù),而Session可以存儲(chǔ)更復(fù)雜的對(duì)象和數(shù)據(jù)結(jié)構(gòu)。

          這道題是比較老的題了,現(xiàn)在都用token了。但是也必須會(huì)啊。

          詳解-->傻傻分不清之 Cookie、Session、Token、JWT


          操作題:

          11、請(qǐng)用代碼反轉(zhuǎn)這個(gè)字符串:string strTmp= "發(fā)TENTOD";

          代碼如下:

                  
                    string strTmp = "槽跳發(fā)開TENTOD";
                  
                  
                    char[] charArray = strTmp.ToCharArray();
                  
                  
                    Array.Reverse(charArray);
                  
                  
                    string reversedStr = new string(charArray);
                  
                  
                    Console.WriteLine(reversedStr);
                  
                  
                    
                      //輸出結(jié)果為:DOTNET開發(fā)跳槽
                    
                  
                

          還可以用循環(huán)反轉(zhuǎn)字符串的方式,代碼如下:

                  
                    string strTmp = "槽跳發(fā)開TENTOD";
                  
                  
                    char[] charArray = strTmp.ToCharArray();
                  
                  
                    
                      
          int left = 0; int right = charArray.Length - 1;
          while (left < right) { // 交換左右兩個(gè)字符 char temp = charArray[left]; charArray[left] = charArray[right]; charArray[right] = temp;
          // 移動(dòng)左右指針 left++; right--; }
          string reversedStr = new string(charArray); Console.WriteLine(reversedStr);


          12、請(qǐng)用C#如何獲得下個(gè)月的第一天和最后一天的日期?

                
                  DateTime currentDate = DateTime.Now;
                
                
                  DateTime firstDayOfNextMonth = new DateTime(currentDate.Year, currentDate.Month, 1).AddMonths(1);
                
                
                  DateTime lastDayOfNextMonth = firstDayOfNextMonth.AddMonths(1).AddDays(-1);
                
                
                  
                    
          Console.WriteLine("下個(gè)月的第一天:" + firstDayOfNextMonth.ToShortDateString()); Console.WriteLine("下個(gè)月的最后一天:" + lastDayOfNextMonth.ToShortDateString());

          這是個(gè)基礎(chǔ)題。

          結(jié)語

          ????是不是覺得特別的簡(jiǎn)單,這是比較基礎(chǔ)的.NET面試題,適合初級(jí)的.NET工程師。這個(gè)網(wǎng)友通過了面試,但是對(duì)方只能給8K,他工作經(jīng)驗(yàn)3年,大家說怎么樣?可以去嗎?小編覺得如果圖穩(wěn)定可以去,畢竟是國(guó)企。希望本次的面試題能給大家的面試有所幫助,對(duì)于以上面試題你有什么看法歡迎大家留言討論。

          版權(quán)聲明:本文來源于網(wǎng)友收集或網(wǎng)友供稿,僅供學(xué)習(xí)交流之用,如果有侵權(quán),請(qǐng)轉(zhuǎn)告小編或者留言,本公眾號(hào)立即刪除。



          5db9a25afe06c87c1e483712106ec67f.webp 支持小薇
              

          關(guān)注公眾號(hào)DotNet開發(fā)跳槽?????

                

          點(diǎn)

          b1b1524436cacae8968b55078deadc26.webp

          點(diǎn)

          32c70a0213c3b852acc12b5c678bea16.webp

          點(diǎn) 點(diǎn)

          b358e67617d7e5f2f527f5ed7cdcdebb.webp

          點(diǎn)在看

          瀏覽 34
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  99久久婷婷国产精品2020 | 日韩色情免费电影 | 无码内射在线播放 | 午夜福利影视 | 大香蕉网免费伊人 |