GetHashCode的作用是用来判定是否是同一个对象。
C#仍然是一种静态类型的语言。var这种关键字知识为了使用方便。编译器自行推断其类型罢了。
C#还是类型安全的,除非其中存在转换关系,否则是不允许转换进行的。
值类型是不安全的。因此也不允许继承之类的操作。分在线程栈上,不受GC影响。
引用类型包括:
- class
- interface
- delegate
- Object
- string
- Dynamic(unity中并没有这个东西)
值类型大概就是结构和枚举。
关于UNITYOBJECT
BroadcastMessage是调用该组件所在的游戏对象及其子对象所有匹配的方法
SendMessage则只是针对游戏对象的方法。
对于BroadCast来说即使是私有方法也会被广播出来!
MonoBehaviour里的公共方法一是有关协程,二是有关Invoke方法
消息里很有趣的两个消息:OnBecameVisible与OnBecameInvisible.顾名思义,自己想象。但是要注意的是Scene也会调用这个方法
还有一个就是OnLevelWasLoaded,也是可以顾名思义。可以用来做一些转换效果
装箱拆箱:
装箱就是把值类型转换为引用类型,拆箱就是把引用类型提取成值类型
装箱比较会降低效率,拆箱表示我还好啦~