1、C# 的三大特性?

封装、继承、多态

2、简述 private、 protected、 public、 internal 修饰符的访问权限。

private : 私有成员, 在类的内部才可以访问。

protected : 保护成员,该类内部和继承类中可以访问。

public : 公共成员,完全公开,没有访问限制。

internal: 当前程序集内可以访问。

3、接口和类的区别

接口:不能实例化,方法也没有具体的实现,被继承时,继承类必须实现接口的所有方法。

类:可以被实例化,被继承时,继承类也不需要重新实现被继承类中的方法。但是如果被继承类的方法中有abstract修饰的,继承类则需要实现这个方法。

4、在对象比较中,对象一致和对象相等分别是指什么?

对象一致指的是引用相同。对象相等指的是内容相等。

5、ref修饰参数和out修饰参数的区别

ref、out都可以从函数内部传出值,区别是,ref修饰的参数必须先初始化、而out不用

6、C#中String和string有什么区别?

  • string是C#中的类,String是Framework的类,
  • 如果写的是string,在编译的时候编译器会把他转换为String。所以直接使用String会让编译器少做工作,可以提高一下性能。
  • 在C#中建议使用string,比较符合规范 。
  • 在C#中string是关键字,而String不是。

7、 const和readonly两者区别?

const:

  • 编译时常量
  • 本身就是静态变量
  • 只能定义基本类型,如int,string等等
  • 在声明的时候必须初始化,且不能修改

readonly:

  • 运行时常量
  • 不是静态变量,如果需要需加上“static”关键字
  • 可以定义一切类型
  • 可以延迟到构造函数初始化

8、public static const int A = 1; 这段代码有错误吗

错误:const 不能被修饰为 static
因为定义为常量(const)后就是静态的(static)

9、try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不会被执行,什么时候被执行,在return前还是后?

会执行,在return前执行。

10、string str = null 与 string str = "" 的区别

string str = null 是不给他分配内存空间,而 string str = "" 给它分配长度为空字符串的内存空间。
string str = null 没有 string 对象,string str = "" 有一个字符串对象。

11、什么叫做泛型?

泛型就是参数化类型

泛型的作用是减少重复代码

12、什么是反射?

动态获取程序集信息、对象信息。

13、装箱和拆箱

装箱是将值类型转化为引用类型的过程;

拆箱是将引用类型转化为值类型的过程

14、2+5+”8” 得到的结果是什么

从左向右运算,int + string 是 string,所以是 “78”

扩展:”8”+2+5 是”825”,而 “8”+(2+5)是 “87”

15、a=10,b=15,请在不使用第三方变量的情况下,把a、b的值互换

            int a = ;
int b = ;
a += b;
b = a - b;
a -= b;
Console.WriteLine("a={0}\r\nb={1}", a, b);

16、现有 1~10 共十个自然数,已随机放入一个有 8 个元素的数组 nums[8]

int[] numbers= { 3, 9, 8, 2, 4, 6, 10, 7 };

要求写出一个尽量简单的方案,找出没有被放入数组的那 2 个数,并打印这 2 个数。

            int[] numbers = { , , , , , , ,  };
for (int i = ; i <= ; i++)
{
//通过使用默认的相等比较器确定序列是否包含指定的元素。
if (!numbers.Contains(i))
{
Console.WriteLine(i);
}
}

17、请编程实现一个冒泡排序算法?

            int[] array = { , , , , , , , , ,  };
for (int i = ; i < array.Length; i++)
{
for (int j = ; j < array.Length - - i; j++)
{
if (array[j] > array[j + ])
{
int temp = array[j];
array[j] = array[j + ];
array[j + ] = temp;
}
}
}
Console.WriteLine("冒泡排序");
foreach (var t in array)
{
Console.WriteLine($"{t}");
}

18、产生一个int数组,长度为100,并向其中随机插入1-100,并且不能重复?

            var list = new List<int>();
var random = new Random();
while (true)
{
var temp2 = random.Next(, );
if (list.Count == )
{
break;
}
if (!list.Contains(temp2))
{
list.Add(temp2);
}
}
foreach (var t in list)
{
Console.Write(t + ",");

.Net 面试题整理(一)的更多相关文章

  1. 【web前端面试题整理06】成都第一弹,邂逅聚美优品

    前言 上周四回了成都,休息了一下下,工作问题还是需要解决的,于是今天去面试了一下,现在面试回来了,我感觉还是可以整理一下心得. 这个面试题整理系列是为了以后前端方面的兄弟面试时候可以得到一点点帮助,因 ...

  2. C++ 面试题整理

    我和朋友们面到的c++试题整理 虚表 static const sizeof 可构造不可继承的类 stl Iterator失效 map vector vector的removed_if 优化 ---- ...

  3. Touch事件or手机卫士面试题整理回答(二)

    Touch事件or手机卫士面试题整理回答(二) 自定义控件 1. Touch事件的传递机制 顶级View->父View->子View,不处理逆向返回 OnInterceptTouchEve ...

  4. 尚学堂Java面试题整理

    博客分类: 经典分享   1. super()与this()的差别? - 6 -  2. 作用域public,protected,private,以及不写时的差别? - 6 -  3. 编程输出例如以 ...

  5. 【JAVA面试】java面试题整理(4)

    版权声明:转载请注明 https://blog.csdn.net/qq_33591903/article/details/83473779                               ...

  6. 北京Java笔试题整理

    北京Java笔试题整理 1.什么是java虚拟机?为什么ava被称作是"平台无关的编程语言? 答:Java虚拟机可以理解为一个特殊的"操作系统",只是它连接的不是硬件,而 ...

  7. Java笔试面试题整理第八波

    转载至:http://blog.csdn.net/shakespeare001/article/details/51388516 作者:山代王(开心阳) 本系列整理Java相关的笔试面试知识点,其他几 ...

  8. Java笔试面试题整理第六波(修正版)

    转载至:http://blog.csdn.net/shakespeare001/article/details/51330745 作者:山代王(开心阳) 本系列整理Java相关的笔试面试知识点,其他几 ...

  9. Java笔试面试题整理第五波

    转载至:http://blog.csdn.net/shakespeare001/article/details/51321498 作者:山代王(开心阳) 本系列整理Java相关的笔试面试知识点,其他几 ...

  10. Java笔试面试题整理第四波

    转载至:http://blog.csdn.net/shakespeare001/article/details/51274685 作者:山代王(开心阳) 本系列整理Java相关的笔试面试知识点,其他几 ...

随机推荐

  1. 使用colab平台进行训练

    https://www.zhongxiaoping.cn/2018/12/01/%E4%BD%BF%E7%94%A8colab%E5%B9%B3%E5%8F%B0%E8%BF%9B%E8%A1%8C% ...

  2. supersocket为动态命令增加命令过滤器

    由于我们无法像 C# 中一样方便的将 CLR 属性添加到 Python 文件或者函数中,因此我们需要定义一个函数 "getFilters()" 用于将命令过滤器方会给 CLR 运行 ...

  3. iptables在我们的网络机房实现NAT共享上网

    工作环境:上层代理192.168.60.6(4480),只授予教师机(192.168.62.111)使用该代理的权限 目标:不使用squid代理上网,而是使用NAT的方式上网 方法: 1) 确保停止教 ...

  4. P1110 变身

    题目描述 给你一个长度为n的数组a,他们的坐标从1到n,并且他们的数值也在1到n之间且两两不同. 数组中的每个元素每轮回合都会变身,变身的结果取决于该元素当前的值,如果在某一个回合该元素的值为u,则下 ...

  5. jquery银行电子账单表格填入和编辑插件

    jquery银行电子账单表格填入和编辑 前段时间做的一个银行表格账单的jquery插件,用于金额写入和编辑的应用,希望对大家有所帮助,发现问题欢迎回复 ;(function($){ function ...

  6. 类(class)和继承

    .继承之前的写法 ↓ ----------------------------------------------------------------------------------------- ...

  7. 与正则有关的JS方法结合其在项目中的应用

    与正则有关的JS方法结合其在项目中的应用 前言 最近项目中用到正则匹配比较多,因此打算深入理解和总结下各个与正则有关的方法,再结合在项目中使用的情况.与正则有关的JS方法共有7个,分别是RegExp对 ...

  8. Recall(召回率);Precision(准确率);F1-Meature(综合评价指标);true positives;false positives;false negatives..

    转自:http://blog.csdn.net/t710smgtwoshima/article/details/8215037   Recall(召回率);Precision(准确率);F1-Meat ...

  9. CF1208

    CF1208 打的话貌似能够涨分的样子? A 水题 B 枚举左端点,看看右端点的最近位置 开一个类似于桶的东西维护一下上一次出现位置 左端点左边就删掉,否则就要将上一次出现的位置删掉 时间复杂度\(O ...

  10. HDU 6444 Neko's loop(单调队列)

    Neko has a loop of size nn. The loop has a happy value aiai on the i−th(0≤i≤n−1)i−th(0≤i≤n−1) grid.  ...