Unity-使用面向對象的思想


    在做游戲之初,老師曾經說過要用面向對象的思想去做。當時滿口答應,應為學了一點C#的原因感覺面向對象很簡單嘛,但是事實上在做游戲的過程中,為了趕進度我的代碼寫的很冗余,很亂。這就導致了我不得不重新修改。這實在是一件很痛苦的事情。所以做游戲之前先對這個游戲進行一個簡單的構思是非常有必要的。

問題一:為什么要使用基類?

   我不懂為什么要寫一個基類,然后讓子類繼承它。我感覺這和每個子類自己寫腳本沒有什么不同。但實際上用子類繼承基類的好處是:

1.減少重復使用的代碼

    比如一個打印機類,它們都有共同的屬性,比如:型號,參數,重量等等。這些寫在基類里面,你只需要讓每個子類有自己獨特的特點就夠了。

2.修改時便於控制

    現在需要修改打印機的一個共有的屬性。如果你是使用子類繼承基類,那很方便直接修改基類就好。但如果你是使用每個打印機都有自己的腳本,那么不好意思你要一個個的去修改,十個八個沒問題,一千個呢?所以這就是使用基類的好處。

問題二:子類怎么使用基類的方法?

  一般來說,一個具有重復使用性的物體都要分為數據層和邏輯層。其中邏輯層是直接掛在與其對應的物體上面的,邏輯層來引用數據層的數據。那么子類該怎么繼承父類的方法呢?

我寫了兩個腳本,一個是DBDefence,一個是Defence。DBDefence是基類。

 

  看懂了吧,子類里面可以直接寫基類里面的方法名來調用,因為子類里面如果找不到該方法時會自動的去基類里面找。這就像你爸爸的東西就是你的東西一樣。。。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM