千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

手機(jī)站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

千鋒教育

掃一掃進(jìn)入千鋒手機(jī)站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

當(dāng)前位置:首頁  >  應(yīng)聘面試  >  Unity面試題  > unity面試題合集(二)

unity面試題合集(二)

來源:千鋒教育
發(fā)布人:wjy
時(shí)間: 2022-07-13 16:42:00 1657701720

  1.下列代碼在運(yùn)行中會(huì)發(fā)生什么問題?如何避免?

  答:會(huì)產(chǎn)生運(yùn)行時(shí)錯(cuò)誤,因?yàn)閒oreach是只讀的。不能一邊遍歷一邊修改。

  2.請(qǐng)簡述關(guān)鍵字Sealed用在類聲明和函數(shù)聲明時(shí)的作用

  答:類聲明時(shí)可防止其他類繼承此類,在方法中聲明則可防止派生類重寫此方法。

  關(guān)鍵字Seal既然可以聲明類,也可以聲明方法

  3.請(qǐng)簡述private,public,protected,internal的區(qū)別

unity面試題

  4.反射的實(shí)現(xiàn)原理?

  (以下英文純手打,無百度)

  Assembly – 程序集

  Class – 類(type)

  Method –方法(methodinfo)

  Property – 屬性(proinfo)

  但是我好像不知道反射原理是什么, 有一個(gè)方法是Invoke(“Function_name”)在Unity3d的部分游戲源碼見得比較多,作用和普通Call方法一樣,雖然有些炫技,但是卻是在用反射實(shí)現(xiàn)一些游戲邏輯,而且這個(gè)游戲邏輯在Android|IOS等平臺(tái)也是運(yùn)行正常,反射的作用主要是跨程序集調(diào)用,作為一個(gè)基本抽象思維的程序員,應(yīng)該要理解跨當(dāng)前運(yùn)行時(shí)的程序集本身當(dāng)然也一個(gè)程序集,C#反射能廣泛應(yīng)用,并且出錯(cuò)幾乎是0的原因,應(yīng)該就是C#程序集的開放,格式不變和不加密(微軟本身反而不支持開源)

  5.Net與Mono的關(guān)系?

  有人說.net只能在 windows上面跑,Mono能跨平臺(tái),是.net的擴(kuò)展,這說法肯定是不正確的,C#(.Net)自誕生那天起就為了超越JAVA(應(yīng)該黑絲2003年,.NET一出就硬抄了JAVA所有的特性,還強(qiáng)調(diào)所有新特性超越JAVA),C#的GC就是對(duì)應(yīng)JAVA的垃圾回收機(jī)制,可惜的是長期以來C# Framework的體積比現(xiàn)在2018年的JVM虛擬機(jī)jre8還大

  JVM是一次書寫代碼,所有平臺(tái)通用

  那么C# Framework(.Net)肯定也是支持跨平臺(tái)

  嗯,MONO是?官方一大段英文其實(shí)只要看最后2個(gè)就知道based on the ECMA standards

  ECMA是什么鬼?你現(xiàn)在只要知道來自歐洲的標(biāo)準(zhǔn)就可以了

  由于微軟的不開源,加上.NET的體積比較大,所以開源程序員都希望找到一種可以用C#或者其他書寫,卻是極度簡化版的.NET,結(jié)果當(dāng)年歐洲某小國某程序員秘密組織找到了微軟的內(nèi)核CIL(Common Intermediate Language通用中間語言,也叫做MSIL微軟中間語言)的一種代碼指令集,CIL可以在任何支持CLI(Common Language Infrastructure,通用語言基礎(chǔ)結(jié)構(gòu))的環(huán)境中運(yùn)行

  (微軟一開始心比較大,目標(biāo)是所有語言書寫,在所有平臺(tái)書運(yùn)行,開發(fā)web,app等所有應(yīng)用,都通過visual studio,結(jié)果被Google和喬布斯打的頭低低,Google在語言性和跨平臺(tái)功能一直強(qiáng)調(diào)領(lǐng)先,喬布斯主張程序即藝術(shù),iphone1,2狠狠打了Bill Gate2下,國內(nèi)的c#程序員一直以來是最低下收入的一種程序員)

  當(dāng)時(shí)歐洲小國的程序員,優(yōu)化了CLI并做出了MonoDeveloper這個(gè)IDE工具,后來他們成立了一個(gè)Xamarim公司,現(xiàn)在已經(jīng)被微軟收購,開源的MONO也沒有繼續(xù)下去

  Unity現(xiàn)在應(yīng)該是基于ECMA這個(gè)協(xié)議才能得以繼續(xù)使用舊版本的開源MONO而不需要和微軟杠上

  最近中興被美國狀告事件,類比一下MONO和微軟的關(guān)系你就懂了,政治在這里不能多說,我就不提了,但學(xué)習(xí)程序以外難道你學(xué)校就沒有政治課?難道你志愿不是考公務(wù)員報(bào)效國家?你不理政治,政治會(huì)來修理你。

  我的推論是,mono是一種中間語言,而內(nèi)核還是.net的一個(gè)簡化版的虛擬機(jī),能跨平臺(tái)運(yùn)行,這個(gè)虛擬機(jī)類似于jvm虛擬機(jī),提供各種框架,API和程序執(zhí)行和調(diào)用功能,但明顯支持的最強(qiáng)語言還是C#

  6.簡述Unity3D支持的作為腳本的語言的名稱

  C#

  JS

  更多關(guān)于“unity培訓(xùn)”的問題,歡迎咨詢千鋒教育在線名師。千鋒教育多年辦學(xué),課程大綱緊跟企業(yè)需求,更科學(xué)更嚴(yán)謹(jǐn),每年培養(yǎng)泛IT人才近2萬人。不論你是零基礎(chǔ)還是想提升,都可以找到適合的班型,千鋒教育隨時(shí)歡迎你來試聽。

tags:
聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
請(qǐng)您保持通訊暢通,專屬學(xué)習(xí)老師24小時(shí)內(nèi)將與您1V1溝通
免費(fèi)領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT