北京RT科技有限公司.net工程师面试题


Posted in 面试题 onFebruary 15, 2013
1.在c#中using和new这两个关键字有什么意义,请写出你所知道的意义?using 指令 和语句 new 创建实例 new 隐藏基类中方法
答:
1). using指令。using + 命名空间名字,这样可以在程序中直接用命令空间中的类型,而不必指定类型的详细命名空间。
2).using别名。using + 别名 = 包括详细命名空间信息的具体的类型。当一个cs引用多个命名空间时,而有相同的类型时可以这样做。比如namespace1 和namespace2下面都有myClass类时,可以using class1 = namespace1.myClass;using class2 = namespace2.myClass。
3).using语句,定义一个范围,在范围结束时处理对象。
(1)new 运算符
用于创建对象和调用构造函数。
(2)new 修饰符
用于向基类成员隐藏继承成员。
(3)new 约束
用于在泛型声明中约束可能用作类型参数的参数的类型。

4.谈谈类和结构的区别?类是引用类型、结构是值类型
答:
结构与类共享几乎所有相同的语法,但结构比类受到的限制更多:

尽管结构的静态字段可以初始化,结构实例字段声明还是不能使用初始值设定项。

结构不能声明默认构造函数(没有参数的构造函数)或析构函数。

结构的副本由编译器自动创建和销毁,因此不需要使用默认构造函数和析构函数。实际上,编译器通过为所有字段赋予默认值(参见默认值表)来实现默认构造函数。结构不能从类或其他结构继承。

结构是值类型 — 如果从结构创建一个对象并将该对象赋给某个变量,变量则包含结构的全部值。复制包含结构的变量时,将复制所有数据,对新副本所做的任何修改都不会改变旧副本的数据。由于结构不使用引用,因此结构没有标识 — 具有相同数据的两个值类型实例是无法区分的。C# 中的所有值类型本质上都继承自 ValueType,后者继承自 Object。

编译器可以在一个称为装箱的过程中将值类型转换为引用类型。

结构具有以下特点:

结构是值类型,而类是引用类型。

向方法传递结构时,结构是通过传值方式传递的,而不是作为引用传递的。

与类不同,结构的实例化可以不使用 new 运算符。

l 结构可以声明构造函数,但它们必须带参数。

一个结构不能从另一个结构或类继承,而且不能作为一个类的基。所有结构都直接继承自 System.ValueType,后者继承自 System.Object。

结构可以实现接口。

在结构中初始化实例字段是错误的。

5.一个长度为10000的字符串,通过随机从a-z中抽取10000个字符组成。请用c#语言编写主要程序来实现。
答:
using System.Text;
StringBuilder sb = new StringBuilder(0, 10000);
string strABC = “a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z”;
string[] ABC = strABC.Split(‘,’);
int len = ABC.Length;
Random rd = new Random();
for (int i = 0; i {
sb.Append(ABC[rd.Next(len)]);
}

6.对于这样的一个枚举类型:
enum Color:byte{
Red,
Green,
Blue,
Orange
}
试写一段程序显示出枚举类型中定义的所有符号名称以及它们对应的数值。
答:string[] ss=Enum.GetNames(typeof(Color));
byte[] bb=Enum.GetValues(typeof(Color));
7.您了解设计模式么?请列出您所知道的设计模式的名称。
答:
设计模式是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。设计模式使人们可以更加简单方便地复用成功的设计和体系结构。将已证实的技术表述成设计模式也会使新系统开发者更加容易理解其设计思路。
一个模式的四个基本要素
1. 模式名称(pattern name)
一个助记名,它用一两个词来描述模式的问题、解决方案和效果。命名一个新的模式增加了我们的设计词汇。设计模式允许我们在较高的抽象层次上进行设计。基于一个模式词汇表,我们自己以及同事之间就可以讨论模式并在编写文档时使用它们。模式名可以帮助我们思考,便于我们与其他人交流设计思想及设计结果。找到恰当的模式名也是我们设计模式编目工作的难点之一。
2. 问题(problem)

描述了应该在何时使用模式。它解释了设计问题和问题存在的前因后果,它可能描述了特定的设计问题,如怎样用对象表示算法等。也可能描述了导致不灵活设计的类或对象结构。有时候,问题部分会包括使用模式必须满足的一系列先决条件。
3. 解决方案(solution)
描述了设计的组成成分,它们之间的相互关系及各自的职责和协作方式。因为模式就像一个模板,可应用于多种不同场合,所以解决方案并不描述一个特定而具体的设计或实现,而是提供设计问题的抽象描述和怎样用一个具有一般意义的元素组合(类或对象组合)来解决这个问题。
4. 效果(consequences)
描述了模式应用的效果及使用模式应权衡的问题。尽管我们描述设计决策时,并不总提到模式效果,但它们对于评价设计选择和理解使用模式的代价及好处具有重要意义。软件效果大多关注对时间和空间的衡量,它们也表述了语言和实现问题。因为复用是面向对象设计的要素之一,所以模式效果包括它对系统的灵活性、扩充性或可移植性的影响,显式地列出这些效果对理解和评价这些模式很有帮助。

MVC,factory,singleton

8.请在SQL Server中设计表来保存一个树状结构的组织结构图(假设结构图中只有名称这一项内容需要保存),如果我想查询某一职位下的所有职位,用一个存储过程来实现,你有什么思路?
答:parent表(字段:pid,pname),child表(字段:cid,cname,pid)
递归
9.什么叫做SQL注入,如何防止?请举例说明。
答:利用sql关键字对网站进行攻击。过滤关键字’等

10.下面这段代码输出什么?为什么?
int i=5;
int j=5;
if (Object.ReferenceEquals(i,j))
Console.WriteLine(“Equal”);
else
Console.WriteLine(“Not Equal”);
答:”Not Equal”。因为Object.ReferenceEquals比较的是实例是否相同。

Tags in this post...

面试题 相关文章推荐
怎样让char类型的东西转换成int类型
Dec 09 面试题
怎样比较两个类型为String的字符串
Aug 17 面试题
华为慧通笔试题
Apr 22 面试题
一些高难度的SQL面试题
Nov 29 面试题
NET程序员上机面试题
May 23 面试题
TCP/IP中的TCP和IP分别承担什么责任
Apr 21 面试题
什么是符号链接,什么是硬链接?符号链接与硬链接的区别是什么?
Jan 19 面试题
软件测试有哪些?什么是配置项?
Feb 12 面试题
几道Web/Ajax的面试题
Nov 05 面试题
Ajax的优点和缺点
Nov 21 面试题
Python文件操作的面试题
Jun 22 面试题
九州传奇上机题
Jul 10 面试题
2019史上最全Database工程师题库
Dec 06 #面试题
什么是SQL Server的确定性函数和不确定性函数
Aug 04 #面试题
什么是聚集索引和非聚集索引
Jan 17 #面试题
Oracle中delete,truncate和drop的区别
May 05 #面试题
什么是唯一索引
Jul 05 #面试题
主键(Primary Key)约束和唯一性(UNIQUE)约束的区别
May 29 #面试题
介绍一下SQL中union,intersect和minus
Apr 05 #面试题
You might like
提升PHP执行速度全攻略(下)
2006/10/09 PHP
PHP实现通过get方式识别用户发送邮件的方法
2015/07/16 PHP
PHP快速生成各种信息提示框的方法
2016/02/03 PHP
asp javascript 实现关闭窗口时保存数据的办法
2007/11/24 Javascript
js仿黑客帝国字母掉落效果代码分享
2020/11/08 Javascript
有关Promises异步问题详解
2015/11/13 Javascript
jquery自定义右键菜单、全选、不连续选择
2016/03/01 Javascript
JS弹出窗口的运用与技巧大全
2016/11/01 Javascript
HTML5 JS压缩图片并获取图片BASE64编码上传
2020/11/16 Javascript
vue注册组件的几种方式总结
2018/03/08 Javascript
React组件内事件传参实现tab切换的示例代码
2018/07/04 Javascript
vueJs实现DOM加载完之后自动下拉到底部的实例代码
2018/08/31 Javascript
利用原生的JavaScript实现简单拼图游戏
2018/11/18 Javascript
vue+iview框架实现左侧动态菜单功能的示例代码
2020/07/23 Javascript
[01:47]2018年度DOTA2最佳教练-完美盛典
2018/12/16 DOTA
用python代码做configure文件
2014/07/20 Python
python实现的简单文本类游戏实例
2015/04/28 Python
python读取txt文件中特定位置字符的方法
2018/12/24 Python
python使用threading.Condition交替打印两个字符
2019/05/07 Python
Python Web程序搭建简单的Web服务器
2019/07/31 Python
Python configparser模块操作代码实例
2020/06/08 Python
python3实现飞机大战
2020/11/29 Python
凯伦·米莲女装网上商店:Karen Millen
2017/11/07 全球购物
英国拳击装备购物网站:RDX Sports
2018/01/23 全球购物
Omio葡萄牙:全欧洲低价大巴、火车和航班搜索和比价
2019/02/09 全球购物
全神贯注教学反思
2014/02/03 职场文书
软件部经理岗位职责范本
2014/02/25 职场文书
高三家长寄语
2014/04/03 职场文书
给市场的环保建议书
2014/05/14 职场文书
建筑投标担保书
2014/05/20 职场文书
钳工实训报告总结
2014/11/04 职场文书
党员学习群众路线心得体会
2014/11/04 职场文书
开学第一周日记(三篇范文)
2019/08/23 职场文书
《鲁滨逊漂流记》之六读后感(4篇)
2019/09/29 职场文书
Centos7中MySQL数据库使用mysqldump进行每日自动备份的编写
2021/08/02 MySQL
Python图像处理库PIL详细使用说明
2022/04/06 Python