U3D開發(fā)準(zhǔn)備工作(4)游戲開發(fā)之基-C#

參考書籍:
《Unity3D/2D手機(jī)游戲開發(fā)》
一、C#簡介
在Unity編程中,使用C#作為腳本語言是大多數(shù)人的選擇,C#是一門面向?qū)ο笳Z言,具有類似Java的垃圾回收機(jī)制
Unity中使用的C#和.NET平臺下的C#很像卻不完全一樣,Unity內(nèi)的C#運(yùn)行于Mono虛擬機(jī)里,是一個開源的軟件
平臺,以.NET開發(fā)框架為基礎(chǔ),在U3D中使用C#不僅能調(diào)用引擎本身的功能,還能調(diào)用.NET提供的大部分功能。
二、C#基本語法
1.類型
C#是一種強(qiáng)類型語言,必須聲明對象的類型,對象類型對應(yīng)的就是所占內(nèi)存的大小
C#類型分為兩大類:值類型和引用類型。
兩者的主要區(qū)別是在內(nèi)存中的存儲方式不同,值類型通常是在棧上靜態(tài)分配的,引用類型在進(jìn)程堆中動態(tài)分配
*值類型包括內(nèi)置類型(用關(guān)鍵字int、char等聲明),結(jié)構(gòu)(關(guān)鍵字struct聲明)和枚舉(關(guān)鍵字enum聲明)
*引用類型包括類(用關(guān)鍵字class聲明)和委托(用關(guān)鍵字delegate聲明)
1.1內(nèi)置類型
所有的值類型隱形派生System.ValueType,其中內(nèi)置類型是最基本的類型。
[類型/大小or字節(jié)/.NET類型/說明]
byte 1 Byte 無符號,值 0~255
char 2 Char Unicode字符
bool 1 Boolean true或者false
sbyte 1 SByte 有符號,值-128~127
short 2 Int16 無符號,值-32768~32767
ushort 2 UInt16 無符號,值0~65535
int 4 Int32 有符號整數(shù),值-2147483648~2147483647
*枚舉可看作一個常量列表
三元操作符:條件表達(dá)式?表達(dá)式1:表達(dá)式2


//定義類
public class AmClass{
int a = 0;
int b = 1;
//定義構(gòu)造函數(shù)
public AmClass(){
Debug.Log("aaa");

}
//定義方法
public int Add(){

return a+b;

}

}

//創(chuàng)建對象
AmClass ac = new AmClass();
//調(diào)用Add方法
int n = ac.Add();

封裝
public 完全公開,在類內(nèi)部或外部任何地方可訪問
protected 同一名字空間內(nèi)的派生類可訪問
private 僅在類內(nèi)部可以訪問

//定義一個公有類
public class A
{
public int a = 0;//公有的變量
int b = 0;//默認(rèn)為private,只能在類內(nèi)部訪問
//定義一個公有方法
public int Add()
{
return a+b;
}
//定義一個私有方法
private void Len()
{
//....
}

}
//.....

A a = new A();//創(chuàng)建一個對象
a.Add();

繼承
//定義一個基類
public class Enemy
{
//構(gòu)造函數(shù)
public Enemy(){
Debug.Log("aaaa");
}

    public void UpdateAI(){
        Debug.Log ("bbb");
    }

}

//派生類boss繼承基類Enemy
public class Boss:Enemy{
    //構(gòu)造函數(shù)
    public Boss(){
        Debug.Log("boss aaaa");
    }
}


         Boss bo = new Boss ();
    bo.UpdateAI ();

重寫override
將需要重寫的方法 標(biāo)記為virtual
在派生類的方法中使用override代替基類的方法

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,578評論 19 139
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法,類相關(guān)的語法,內(nèi)部類的語法,繼承相關(guān)的語法,異常的語法,線程的語...
    子非魚_t_閱讀 34,734評論 18 399
  • importUIKit classViewController:UITabBarController{ enumD...
    明哥_Young閱讀 4,194評論 1 10
  • ¥開啟¥ 【iAPP實(shí)現(xiàn)進(jìn)入界面執(zhí)行逐一顯】 〖2017-08-25 15:22:14〗 《//首先開一個線程,因...
    小菜c閱讀 7,351評論 0 17
  • 活著,簡單兩個字,背后卻似千軍萬馬廝殺的戰(zhàn)場??赐赀@本書后,我有一個疑問,主人公福貴如此悲苦的命運(yùn)到底是歷史的偶然...
    Doris的瓶瓶罐罐閱讀 350評論 0 0

友情鏈接更多精彩內(nèi)容