Unity面试技巧之C#基础

mac2022-06-30  90

 

 

1. 定义常量最好使用运行是常量就是readonly 编译常量就是 const

1 public static readonly MyClass myClass = new MyClass(); 2 public static readonly string userName = "张三"; // 3 public const string userPwd = "1234"; //数字和string 效率高,灵活性低

2. 类型转换 如果使引用类型转换就采用 as/is  值类型采用强制转换

3. 方法编写要简短精悍 这种方法可以让JIT把变量存储在寄存器而非栈中 优化速度

1 //在Demo01中if 和 else中的代码逻辑都会被编译 2 static void Demo01(bool isDone) 3 { 4 List<int> list = new List<int>(); 5 if (isDone) 6 { 7 list.Add(1); 8 list.Add(10); 9 list.Add(100); 10 list.Add(1000); 11 } 12 else 13 { 14 list.Add(2); 15 list.Add(20); 16 list.Add(200); 17 list.Add(2000); 18 } 19 } 20 //在demo02中if 和 else 中逻辑会根据isDone来选择一个进行编译 所以推荐使用Demo02的写法 21 static void Demo02(bool isDone) 22 { 23 if (isDone) 24 Demo02TrueMethod(); 25 else 26 Demo02FlaseMethod(); 27 28 }

4. 申明变量的时候最好进行初始化,而非在方法或者构造函数中赋值

5. 若一个类中有静态量 那么该静态量最好放在静态构造函数中去赋值

 

6.  C#实例化对象的执行顺序

  1. 静态变量设置为 0 ;

  2. 执行静态变量初始化器;

  3. 执行基类的静态构造函数;

  4. 执行静态构造函数;

  5. 实例变量设置为 0;

  6. 执行实例变量初始化器;

  7. 执行基类中合适的实例构造函数;

  8. 执行实例构造函数。

7. 如何降低在程序中创建的对象  

1. 用全局变量代替局部变量  

2. 使用单例模式来减少new对象

8. OOP中的接口和基类之间的区别  

基类描述了对象是什么,接口描述了对象如何表现它的行为

 

转载于:https://www.cnblogs.com/buwangchuxin-/p/9747258.html

相关资源:Unity面试题加强版
最新回复(0)