Unity面試題剖析_第1頁
Unity面試題剖析_第2頁
Unity面試題剖析_第3頁
Unity面試題剖析_第4頁
Unity面試題剖析_第5頁
已閱讀5頁,還剩11頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、最近unity3d找工作有些受挫,自己也開始補課了。下面把這段時間看到的些 面試題供出來讓大家也學習下,題目只是面試官選拔人才的一部分,在研究面試題目的過程中,多檢測下自己的不足,及時溫習或補習下,最終學到真本事才是最重要的。祝自己也祝大家好運哈! 題目中有些答案有網上搜的,也有個人整理的,有錯誤或不足的地方,望指正,謝謝! 文章最后會有參考的一些網址或資料的鏈接,有想看原址的朋友可以直接跳到最后哦。 題目歸類區(看題目字體顏色識第幾部分)ps:下面題目可能稍有點多,翻頁會較麻煩,根據題目的顏色辨別是第幾部分吧(超鏈接功能不會,也懶得做了) &

2、#160;第一部分1.請簡述值類型與引用類型的區別2.C#中所有引用類型的基類是什么3.請簡述ArrayList和List<Int>的主要區別4.請簡述GC(垃圾回收)產生的原因,并描述如何避免?5.請描述Interface與抽象類之間的不同6.下列代碼在運行中會產生幾個臨時對象?7.下列代碼在運行中會發生什么問題?如何避免?8.請簡述關鍵字Sealed用在類聲明和函數聲明時的作用9.請簡述private,public,protected,internal的區別10.反射的實現原理?11. .Net與Mono的關系?12.簡述unity3d支持的作為腳本的語言的名稱13.Unity

3、3D是否支持寫成多線程程序?如果支持的話需要注意什么?14.Unity3D的協程和C#線程之間的區別是什么?15.U3D中用于記錄節點空間幾何信息的組件名稱,及其父類名稱16.簡述四元數的作用,四元數對歐拉角的優點?17.向量的點乘、叉乘以及歸一化的意義?18.矩陣相乘的意義及注意點19.為何大家都在移動設備上尋求U3D原生GUI的替代方案20.請簡述如何在不同分辨率下保持UI的一致性21.為什么dynamic font在unicode環境下優于static font22.Render的作用?描述MeshRender和SkinnedMeshRender的關系與不同23.簡述SkinnedMes

4、h的實現原理24.在場景中放置多個Camera并同時處于活動狀態會發生什么?25.Prefab的作用?如何在移動環境的設備下恰當地使用它?26.如何銷毀一個UnityEngine.Object及其子類27.為什么Unity3D中會發生在組件上出現數據丟失的情況?28.如何安全的在不同工程間安全地遷移asset數據?三種方法29.MeshCollider和其他Collider的一個主要不同點?30.當一個細小的高速物體撞向另一個較大的物體時,會出現什么情況?如何避免?31.OnEnable、Awake、Start運行時的發生順序?哪些可能在同一個對象周期中反復的發生?32.請簡述OnBecame

5、Visible及OnBecameInvisible的發生時機,以及這一對回調函數的意義?33.Unity3D如何獲知場景中需要加載的數據?34.MeshRender中material和sharedmaterial的區別? 第二部分1.請描述游戲動畫有哪幾種,以及其原理。2.alpha blend 工作原理3.寫光照計算中的diffuse的計算公式4.lod是什么,優缺點是什么5.兩種陰影判斷的方法工作原理6.MipMap是什么?作用?7.用u3d實現2d游戲,有幾種方式?8.u3d中碰撞器和觸發器的區別?9.物體發生碰撞的必要條件10.CharacterController

6、和Rigidbody的區別11.物體發生碰撞時,有幾個階段,分別對應的函數12.u3d中,幾種施加力的方式,描述出來。13.什么叫做鏈條關節14.物體自旋轉使用的函數叫什么15.物體繞某點旋轉使用函數叫什么16.u3d提供了一個用于保存讀取數據的類,(playerPrefs),請列出保存讀取整形數據的函數17.unity3d提供了幾種光源,分別是什么18.unity3d從喚醒到銷毀有一段生命周期,請列出系統自己調用的幾個重要方法。19.物理更新一般在哪個系統函數里?20.移動相機動作在哪個函數里,為什么在這個函數里。21.當游戲中需要頻繁創建一個物體對象時,我們需要怎么做來節省內存。22.一個

7、場景放置多個camera并同時處于活動狀態,會發生什么23.簡述prefab的用處和環境24.如何銷毀一個UnityEngine.Object以及其子類25.為什么u3d會出現組件上數據丟失的情況26.u3d下如何安全的在不同工程遷移asset數據  第三部分1什么是渲染管道?2如何優化內存?3、動態加載資源的方式?4、什么是協同程序?5、你用過哪些插件? 第四部分1.反向旋轉動畫的方法是什么?2.碰撞檢測需要物體具備什么屬性?3.用代碼實現第三角色控制器4.實現吊機吊物體的功能5.獲取、增加、刪除組件的命令分別是什么?命令作用是命令為8.調試記錄到控制臺的命令是

8、什么?9.編輯器類存放路徑是什么?10.使用原生GUI創建一個可以拖動的窗口命令是什么?11.localPosition與Position的使用區別?12.意義連線13.寫一個計時器工具,從整點開始計時,格式為:00:00:0014.寫出Animation的五個方法15.怎么拿到一個對象上腳本的方法16.上機題17.請簡述向量的點乘,向量的叉乘以及向量歸一化的幾何意義? 第五部分1,在類的構造函數前加上static會報什么錯?為什么?2,C# String類型比stringBuilder類型的優勢是什么?3,C# 函數Func(string a, string b)用Lam

9、bda表達式怎么寫?4,數列1,1,2,3,5,8,13.第n位數是多少?用C#遞歸算法實現5,UML圖示.  答案區:第一部分1. 請簡述值類型與引用類型的區別答:區別:1.值類型存儲在內存棧中,引用類型數據存儲在內存堆中,而內存單元中存放的是堆中存放的地址。2.值類型存取快,引用類型存取慢。3.值類型表示實際數據,引用類型表示指向存儲在內存堆中的數據的指針和引用。4.棧的內存是自動釋放的,堆內存是.NET中會由GC來自動釋放。5.值類型繼承自System.ValueType,引用類型繼承自System.Object。2008/01/31/1059383.htm

10、l2.C#中所有引用類型的基類是什么答:引用類型的基類是System.Object 值類型的基類是System.ValueType同時,值類型也隱式繼承自System.Object3.請簡述ArrayList和List<Int>的主要區別答:ArrayList存在不安全類型(ArrayList會把所有插入其中的數據都當做Object來處理)裝箱拆箱的操作(費時)List是接口,ArrayList是一個實現了該接口的類,可以被實例化。4.請簡述GC(垃圾回收)產生的原因,并描述如何避免?答:GC回收堆上的內存避免:1)減少new產生對象的次數2)使用公用的對象(靜態成員)3

11、)將String換為StringBuilder5.請描述Interface與抽象類之間的不同答:抽象類表示該類中可能已經有一些方法的具體定義,但接口就是公公只能定義各個方法的界面 ,不能具體的實現代碼在成員方法中。類是子類用來繼承的,當父類已經有實際功能的方法時該方法在子類中可以不必實現,直接引用父類的方法,子類也可以重寫該父類的方法。實現接口的時候必須要實現接口中所有的方法,不能遺漏任何一個。參考2012/08/08/2628433.html6.下列代碼在運行中會產生幾個臨時對象? 答:其實在C#中第一行是會出錯的(Java中倒是可行)。應該這樣初始化:string b = new

12、 string(new char'a','b','c');7.下列代碼在運行中會發生什么問題?如何避免? 答:會產生運行時錯誤,因為foreach是只讀的。不能一邊遍歷一邊修改。8.請簡述關鍵字Sealed用在類聲明和函數聲明時的作用答:類聲明時可防止其他類繼承此類,在方法中聲明則可防止派生類重寫此方法。9.請簡述private,public,protected,internal的區別答:public:對任何類和成員都公開,無限制訪問private:僅對該類公開protected:對該類和其派生類公開internal:只能在包含該類的程

13、序集中訪問該類protected internal:protected + internal10.反射的實現原理? foreach (Type type in assembly.GetTypes()                            string t = type.Name;             

14、;  得到程序集中所有類的名稱4,Type type = assembly.GetType("程序集.類名");獲取當前類的類型5,Activator.CreateInstance(type); 創建此類型實例6,MethodInfo mInfo = type.GetMethod("方法名");獲取當前方法7,mInfo.Invoke(null,方法參數);11. .Net與Mono的關系?答:Mono官網主頁Mono is a software platform designed to allow developers to eas

15、ily create cross platform applications. Sponsored by Xamarin, Mono is an open source implementation of Microsoft's .NET Framework based on the ECMA standards for C# and the Common Language Runtime.mono是.net的一個開源跨平臺工具,就類似java虛擬機,java本身不是跨平臺語言,但運行在虛擬機上就能夠實現了跨平臺。.net只能在windows下運行,mono可以實現

16、跨平臺跑,可以運行于linux,Unix,Mac OS等。12.簡述Unity3D支持的作為腳本的語言的名稱答:Unity的腳本語言基于Mono的.Net平臺上運行,可以使用.NET庫,這也為XML、數據庫、正則表達式等問題提供了很好的解決方案。Unity里的腳本都會經過編譯,他們的運行速度也很快。這三種語言實際上的功能和運行速度是一樣的,區別主要體現在語言特性上。JavaScript:和網頁中常用的JavaScript不一樣,它編譯后的運行速度很快,語法方面也會有不少區別。C#Boo:可以看做是Python語言的變種,又糅合了Ruby和C#的特性,它是靜態類型語言13.Unity3D是否支持

17、寫成多線程程序?如果支持的話需要注意什么?答:參考僅能從主線程中訪問Unity3D的組件,對象和Unity3D系統調用支持:如果同時你要處理很多事情或者與Unity的對象互動小可以用thread,否則使用coroutine。注意:C#中有lock這個關鍵字,以確保只有一個線程可以在特定時間內訪問特定的對象14.Unity3D的協程和C#線程之間的區別是什么?答:多線程程序同時運行多個線程 ,而在任一指定時刻只有一個協程在運行,并且這個正在運行的協同程序只在必要時才被掛起。除主線程之外的線程無法訪問Unity3D的對象、組件、方法。Unity3d沒有多線程的概念,不過unity也給我們提供了St

18、artCoroutine(協同程序)和LoadLevelAsync(異步加載關卡)后臺加載場景的方法。 StartCoroutine為什么叫協同程序呢,所謂協同,就是當你在StartCoroutine的函數體里處理一段代碼時,利用yield語句等待執行結果,這期間不影響主程序的繼續執行,可以協同工作。而LoadLevelAsync則允許你在后臺加載新資源和場景,所以再利用協同,你就可以前臺用loading條或動畫提示玩家游戲未卡死,同時后臺協同處理加載的事宜asynchronouse s kr n s .synchronous同步。 15.U3D中用于記錄節點空間幾何信息的

19、組件名稱,及其父類名稱答:Transform 父類是 Component16.簡述四元數的作用,四元數對歐拉角的優點?答:四元數用于表示旋轉相對歐拉角的優點:1)能進行增量旋轉2)避免萬向鎖3)給定方位的表達方式有兩種,互為負(歐拉角有無數種表達方式)17.向量的點乘、叉乘以及歸一化的意義?1)點乘描述了兩個向量的相似程度,結果越大兩向量越相似,還可表示投影2)叉乘得到的向量垂直于原來的兩個向量3)標準化向量:用在只關系方向,不關心大小的時候18.矩陣相乘的意義及注意點用于表示線性變換:旋轉、縮放、投影、平移、仿射注意矩陣的蠕變:誤差的積累19.為何大家都在移動設備上尋求U

20、3D原生GUI的替代方案不美觀,OnGUI很耗費時間,使用不方便 ,DrawCall20.請簡述如何在不同分辨率下保持UI的一致性21.為什么dynamic font在unicode環境下優于static fontUnicode是國際組織制定的可以容納世界上所有文字和符號的字符編碼方案。使用動態字體時,Unity將不會預先生成一個與所有字體的字符紋理。當需要支持亞洲語言或者較大的字體的時候,若使用正常紋理,則字體的紋理將非常大。22.Render的作用?描述MeshRender和SkinnedMeshRender的關系與不同A renderer is what makes an ob

21、ject appear on the screen。Mesh就是指模型的網格(同名組件是用于調整網格屬性的),MeshFilter一般是用于獲得模型網格的組件,而MeshRender是用于把網格渲染出來的組件,23.簡述SkinnedMesh的實現原理24.在場景中放置多個Camera并同時處于活動狀態會發生什么?答:游戲界面可以看到很多攝像機的混合25.Prefab的作用?如何在移動環境的設備下恰當地使用它?2013/03/15/2961663.html26.如何銷毀一個UnityEngine.Object及其子類答:Destory27.為什么Unity3D中會發生在組件上出現數據丟失的情況

22、?答:組件上綁定的對象被刪除了28.如何安全的在不同工程間安全地遷移asset數據?三種方法答:將Assets目錄和Library目錄一起遷移導出包用unity自帶的assets Server功能29.MeshCollider和其他Collider的一個主要不同點?答:Meshcollider再快也是基于V3頂點 建議還是用boxcollider,boxcollider本身是基于算法,沒有面的概念。30.當一個細小的高速物體撞向另一個較大的物體時,會出現什么情況?如何避免?穿透(碰撞檢測失敗)(碰撞體變大,FixedUpdate, 代碼限制)31.OnEnable、Awak

23、e、Start運行時的發生順序?哪些可能在同一個對象周期中反復的發生?32.請簡述OnBecameVisible及OnBecameInvisible的發生時機,以及這一對回調函數的意義?答:當物體是否可見切換之時。可以用于只需要在物體可見時才進行的計算。33.Unity3D如何獲知場景中需要加載的數據?答:題目是獲取的意思?Resource.LoadAssetBundle34.MeshRender中material和sharedmaterial的區別?修改sharedMaterial將改變所有物體使用這個材質的外觀,并且也改變儲存在工程里的材質設置。不推薦修改由sharedMaterial返回

24、的材質。如果你想修改渲染器的材質,使用material替代。      第二部分 1.請描述游戲動畫有哪幾種,以及其原理。主要有關節動畫、單一網格模型動畫(關鍵幀動畫)、骨骼動畫。關節動畫把角色分成若干獨立部分,一個部分對應一個網格模型,部分的動畫連接成一個整體的動畫,角色比較靈活Quake2中使用了這種動畫。單一網絡模型動畫由一個完整的網格模型構成,在動畫序列的關鍵幀里記錄各個頂點的原位置及其改變量,然后插值運算實現動畫效果,角色動畫較真實。骨骼動畫,廣泛應用的動畫方式,集成了以上兩個方式的優點,骨骼按角色特點組成一定的層

25、次結構,由關節相連,可做相對運動,皮膚作為單一網格蒙在骨骼之外,決定角色的外觀。皮膚網格每一個頂點都會受到骨骼的影響,從而實現完美的動畫。(骨骼動畫是由關節動畫發展而來的,如今基本都使用骨骼動畫來實現角色動畫)2.alpha blend 工作原理實際顯示顏色 = 前景顏色*Alpha/255 + 背景顏色*(255-Alpha)/2553.寫光照計算中的diffuse的計算公式實際光照強度 I= 環境光(Iambient) + 漫反射光(Idiffuse) + 鏡面高光(Ispecular);環境光:Iambien

26、t= Aintensity* Acolor; (Aintensity表示環境光強度,Acolor表示環境光顏色)漫反射光:Idiffuse = Dintensity*Dcolor*N.L;(Dintensity表示漫反射強度,Dcolor表示漫反射光顏色,N為該點的法向量,L為光源向量)鏡面反射光:Ispecular = Sintensity*Scolor*(R.V)n;(Sintensity表示鏡面光照強度,Scolor表示鏡面光顏色,R為光的反射向量,V為觀察者向量,n稱為鏡面光指數)4.lod是什么,優缺點是什么LOD技術即Levels of Detail的簡稱,意為多細節層次。LOD技

27、術指根據物體模型的節點在顯示環境中所處的位置和重要度,決定物體渲染的資源分配,降低非重要物體的面數和細節度,從而獲得高效率的渲染運算。優點:可根據距離動態地選擇渲染不同細節的模型缺點:加重美工的負擔,要準備不同細節的同一模型,同樣的會稍微增加游戲的容量。5.兩種陰影判斷的方法工作原理陰影由兩部分組成:本影與半影本影:景物表面上那些沒有被光源直接照射的區域(全黑的輪廓分明的區域)半影:景物表面上那些被某些特定光源直接照射但并非被所有特定光源直接照射的區域(半明半暗區域)求陰影區域的方法:做兩次消隱過程一次對每個光源進行消隱,求出對于光源而言不可見的區域L;一次對視點的位置進行消隱,求出對于視點而

28、言可見的面S;shadow area= L  S陰影分為兩種:自身陰影和投射陰影自身陰影:因物體自身的遮擋而使光線照射不到它上面的某些可見面工作原理:利用背面剔除的方法求出,即假設視點在點光源的位置。投射陰影:因不透明物體遮擋光線使得場景中位于該物體后面的物體或區域受不到光照照射而形成的陰影工作原理:從光源處向物體的所有可見面投射光線,將這些面投影到場景中得到投影面,再將這些投影面與場景中的其他平面求交得出陰影多邊形,保存這些陰影多邊形信息,然后再按視點位置對場景進行相應處理得到所要求的視圖(利用空間換時間,每次只需依據視點位置進行一次陰影計算即可,省去了一次消隱過程)若是

29、動態光源此方法就無效了。5.Vertex Shader是什么?怎么計算?頂點著色器是一段執行在GPU上的程序,用來取代fixed pipeline中的transformation和lighting,Vertex Shader主要操作頂點。Vertex Shader對輸入頂點完成了從local space到homogeneous space(齊次空間)的變換過程,homogeneous space即projection space的下一個space。在這其間共有world transformation, view transformation和projection transformation及

30、lighting幾個過程。6.MipMap是什么?作用?在三維計算機圖形的貼圖渲染中有一個常用的技術被稱為Mipmapping。為了加快渲染速度和減少圖像鋸齒,貼圖被處理成由一系列被預先計算和優化過的圖片組成的文件,這樣的貼圖被稱為 MIP map 或者 mipmap。7.用u3d實現2d游戲,有幾種方式?   1.利用引擎自帶的GUI   2.把攝像機設為Orthographic,用面片作為2d元素   3.利用第三方插件:NGUI、2dToolkit8.u3d中碰撞器和觸

31、發器的區別?collider碰撞器會有碰撞的效果,IsTrigger = false,可以調用OnCollisionEnter/Stay/Exit函數trigger觸發器沒有碰撞效果,isTrigger = true,可以調用OnTriggerEnter/stay/exit函數9.物體發生碰撞的必要條件物體A必須帶有(collider+rigidbody)或者CharacterController,另一個物體也必須至少帶有collider10.CharacterController和Rigidbody的區別Rigidbody具有完全真實物理的特性,而CharacterController可以說

32、是受限的Rigidbody,具有一定的物理效果但不是完全真實的。11.物體發生碰撞時,有幾個階段,分別對應的函數三個階段,OnCollisionEnter/Stay/Exit函數12.u3d中,幾種施加力的方式,描述出來rigidbody.AddForce/AddForceAtPosition,都是rigidbody的成員函數13.什么叫做鏈條關節Hinge Joint ,他可以模擬兩個物體間用一根鏈條連接在一起的情況,能保持兩個物體在一個固定距離內部相互移動而不產生作用力,但是達到固定距離后就會產生拉力。(簡單說就是彈簧)14.物體自旋轉使用的函數叫什么  &#

33、160;  transform.Rotate15.物體繞某點旋轉使用函數叫什么     transform.RotateAround16.u3d提供了一個用于保存讀取數據的類,(playerPrefs),請列出保存讀取整形數據的函數     PlayerPrefs.SetInt 與 PlayerPrefs.GetInt17.unity3d提供了幾種光源,分別是什么平行光:Directional Light聚光燈:Spot Light點光源:Point Li

34、ght區域光源:Area Light(只用于烘培)18.unity3d從喚醒到銷毀有一段生命周期,請列出系統自己調用的幾個重要方法。Awake >OnEnable > Start  > Update > FixedUpdate > LateUpdate > OnGUI > Reset > OnDisable > OnDestroy19.物理更新一般在哪個系統函數里?FixedUpdate,每固定幀繪制時執行一次,和update不同的是FixedUpdate是渲染幀執行,如果你的渲染效率低下的時候FixedUpdate調用

35、次數就會跟著下降。FixedUpdate比較適用于物理引擎的計算,因為是跟每幀渲染有關。Update就比較適合做控制。20.移動相機動作在哪個函數里,為什么在這個函數里。LateUpdate,,是在所有update結束后才調,比較適合用于命令腳本的執行。官網上例子是攝像機的跟隨,都是在所有update操作完才跟進攝像機,不然就有可能出現攝像機已經推進了,但是視角里還未有角色的空幀出現。21.當游戲中需要頻繁創建一個物體對象時,我們需要怎么做來節省內存。做一個pool,游戲開始時預先實例化足夠的數量,然后用的時候取不用的時候收回22.一個場景放置多個camera并同時處于活動狀態,會發生什么實際

36、看到的畫面由多個camera的畫面組成,由depth、Clear Flag、Culling Mask都會影響最終合成效果。23.簡述prefab的用處和環境在游戲運行時實例化,prefab相當于一個模版,對你已有的素材、腳本、參數做一個默認配置,以便于以后修改,同時prefab打包的內容簡化了導出的操作,便于團隊的交流。24.如何銷毀一個UnityEngine.Object以及其子類Destroy25.為什么u3d會出現組件上數據丟失的情況一般是組件上綁定的物體對象被刪除了26.u3d下如何安全的在不同工程遷移asset數據方法1,可以把assets目錄和Library目錄一起遷移,方法2,導

37、出包方法3,用unity帶的assets server功能   第三部分 1什么是渲染管道?是指在顯示器上為了顯示出圖像而經過的一系列必要操作。 渲染管道中的很多步驟,都要將幾何物體從一個坐標系中變換到另一個坐標系中去。主要步驟有:本地坐標->視圖坐標->背面裁剪->光照->裁剪->投影->視圖變換->光柵化。2如何優化內存?有很多種方式,例如1.壓縮自帶類庫;2.將暫時不用的以后還需要使用的物體隱藏起來而不是直接Destroy掉;3.釋放AssetBundle占用的資源;4.降低模型的片面數,降低模型的骨骼數量

38、,降低貼圖的大小;5.使用光照貼圖,使用多層次細節(LOD),使用著色器(Shader),使用預設(Prefab)。3、動態加載資源的方式?(有時候也問區別,具體請百度)1.Resources.Load();2.AssetBundle4、什么是協同程序?在主線程運行時同時開啟另一段邏輯處理,來協助當前程序的執行。換句話說,開啟協程就是開啟一個線程。可以用來控制運動、序列以及對象的行為。5、你用過哪些插件?(最好多熟悉幾個插件,問的時候好回答) 第四部分 1.反向旋轉動畫的方法是什么?2.碰撞檢測需要物體具備什么屬性?3.用代碼實現第三角色控制器4.實現吊機吊物體的功能5.獲

39、取、增加、刪除組件的命令分別是什么?獲取:GetComponent增加:AddComponent刪除:Destroy6.Animation.CrossFade命令作用是:(C)A.動畫放大 B.動畫轉換 C.動畫的淡入為其他動畫7.Application.loadLevel命令為:(A)A.加載關卡 B.異步加載關卡 C.加載動作8.調試記錄到控制臺的命令是什么?Debug.Log();9.編輯器類存放路徑是什么?工程目錄下的Assets/Editor文件夾下。10.使用原生GUI創建一個可以拖動的窗口命令是什么? GUI.DragWindow

40、();11.localPosition與Position的使用區別?localPosition:自身位置,相對于父級的變換的位置。 Position:在世界坐標transform的位置12.意義連線Mathf.Round  四舍五入Mathf.Clamp  限制Mathf.Lerp   插值13.寫一個計時器工具,從整點開始計時,格式為:00:00:0014.寫出Animation的五個方法15.怎么拿到一個對象上腳本的方法GameObject.GetComponent<>();16.上機題:用鼠標實現

41、在場景中拖動物體,用鼠標滾輪實現縮放(用一個Cube即可)。17.請簡述向量的點乘,向量的叉乘以及向量歸一化的幾何意義? 點乘的幾何意義是:計算兩個向量之間的夾角,以及在某一方向上的投影;  第五部分 1,在類的構造函數前加上static會報什么錯?為什么?構造函數格式為 public+類名如果加上static會報錯(靜態構造函數不能有訪問修飾符)原因:靜態構造函數不允許訪問修飾符,也不接受任何參數; 無論創建多少類型的對象,靜態構造函數只執行一次; 運行庫創建類實例或者首次訪問靜態成員之前,運行庫調用靜態構造函數; 靜態構造函數執行先于任何實例級別的構造函數; 顯然也就無法使用this和base來調用構造函數。2,C# String類型比stringBuilder類型的優勢是什么?如果是處理字符串的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論