C#之面试小技巧

Posted buwangchuxin-

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#之面试小技巧相关的知识,希望对你有一定的参考价值。

 

 

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中的接口和基类之间的区别  

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

 

以上是关于C#之面试小技巧的主要内容,如果未能解决你的问题,请参考以下文章

Android课程---Android Studio使用小技巧:提取方法代码片段

VS中添加自定义代码片段——偷懒小技巧

冷门 C# 小技巧之获取变量名称

冷门 C# 小技巧之获取变量名称

提效小技巧——记录那些不常用的代码片段

面向面试编程代码片段之GC