Unity小白的游戲夢(零基礎(chǔ)到入行|鞏固大廠面試必備)
2023-03-14 11:35 作者:娜娜絡(luò)絡(luò) | 我要投稿
1、委托是什么,事件是委托嗎? 它們有什么區(qū)別?
C#中委托通常是指委托類型創(chuàng)建的對象,它用于保存和調(diào)用同類型的方法,基于它可以很方便地實(shí)現(xiàn)觀察者模式。事件不是委托,是委托的更安全實(shí)現(xiàn),也用于保存和調(diào)用同類型的方法,安全性體現(xiàn)在:事件對象不支持=操作符,以及只能在定義事件的類中,調(diào)用事件內(nèi)所保存的方法。
2、運(yùn)行string a = new string(”XYZ”);代碼時(shí),涉及幾個String對象?
2個,一個是字符串字面量"xyz"所對應(yīng)的、駐留在一個全局共享的字符串常量池中的實(shí)例對象,另一個是通過new String(String)創(chuàng)建并初始化的、內(nèi)容與"xyz"相同的實(shí)例對象。a是string類型的引用變量,非實(shí)例對象。
3、值類型與引用類型的區(qū)別?
在C#中,基于值類型創(chuàng)建變量時(shí),會創(chuàng)建相應(yīng)類型的對象,并用變量名進(jìn)行標(biāo)識,可直接用于存儲數(shù)據(jù),其對象內(nèi)存一般位于棧區(qū)。
而基于引用類型創(chuàng)建變量時(shí),其變量為引用變量,并沒有創(chuàng)建引用類型的對象
標(biāo)簽: