dotNET面试(一)
1.列举ASP.NET 页面之间传递值的几种方式。
1).使用QueryString, 如....?id=1; response. Redirect()....
2).使用Session变量
3).使用Server.Transfer
2.如果在一个B/S结构的系统中需要传递变量值,但是又不能使用Session、Cookie、Application,您有几种方法进行处理?
答 : QueryString、 this.Server.Transfer
3. 一列数的规则如下: 1、1、2、3、5、8、13、21、34...... 求第30位数是多少, 用递归算法实现。
class Program
{
static void Main(string[] args)
{
Console.WriteLine(Foo());
//输出 832040
Console.ReadKey();
}
public static int Foo(int i)
{
if (i <= )
return ;
else if (i > && i <= )
return ;
else return Foo(i - ) + Foo(i - );
}
}
4.在下面的例子里,当使用new B()创建B的实例时,产生什么输出?
class Program
{
static void Main(string[] args)
{
var test = new B();//x = 1, y = 0
Console.ReadKey();
}
}
class A
{
public A()
{
PrintFields();
}
public virtual void PrintFields() {}
}
class B:A
{
int x = ;
int y;
public B()
{
y = -;
}
public override void PrintFields()
{
Console.WriteLine("x = {0}, y = {1}", x, y);
}
}
5..net中读写数据库需要用到那些类?他们的作用?
SqlConnection/OleDbConnection:建立数据库的连接;
SqlCommand/OleDbCommand:执行数据库脚本。
6.ASP.NET与ASP相比,主要有哪些进步?
asp解释形,aspx编译型,性能提高,可以跟美工的工作分开进行,更有利于团队开发。
7.产生一个int数组,长度为100,并向其中随机插入1-100,并且不能重复。
class Program
{
static void Main(string[] args)
{
int[] intArr = new int[];
ArrayList myList = new ArrayList();
Random rnd = new Random();
while (myList.Count < )
{
int num = rnd.Next(, );
if (!myList.Contains(num))
myList.Add(num);
}
for (int i = ; i < ; i++ )
{
intArr[i] = (int)myList[i];
}
for (int i = ; i < ; i++ )
{
Console.Write(intArr[i] + "|");
if ((i + ) % == )
{
Console.WriteLine();
}
}
Console.ReadKey();
}
}
8.DataReader与Dataset有什么区别?
一个是只能向前的只读游标,一个是内存中的表。
9.需要实现对一个字符串的处理,首先将该字符串首尾的空格去掉,如果字符串中间还有连续空格的话,仅保留一个空格,即允许字符串中间有多个空格,但连续的空格数不可超过一个
string inputStr = " xx xx ";
inputStr = Regex.Replace(inputStr.Trim(), @"\s+", " ");
10.下面这段代码输出什么?为什么?
int i = ; int j = ;
if (Object.ReferenceEquals(i, j))
Console.WriteLine("Equal");
else Console.WriteLine("Not Equal");
不相等,因为比较的是对像。
11.什么是虚函数?什么是抽像函数?
虚函数(virtual):可由子类继承并重写的函数。抽像函数:规定其非虚子类必须实现的函数,必须被重写。
12.什么是ASP.net中的用户控件?
用户控件一般用在内容多为静态,或者少许会改变的情况下用的比较多,类似ASP中的include..但是功能要强大的多。
13.什么是code-Behind技术?
ASPX,RESX和CS三个后缀的文件,这个就是代码分离,实现了HTML代码和服务器代码分离,方便代码编写和整理。
14.当整数a赋值给一个object对像时,整数a将会被?装箱
15.public static const int A=1;这段代码有错误么?是什么?const不能用static修饰
16.下面的代码中有什么错误吗?abstract override 是不可以一起修饰
class A
{
public virtual void F(){
Console.WriteLine("A.F");
}
}
abstract class B:A
{
public abstract override void F();
}
17.下面这段代码有错误么?
switch (i){
case()://case()条件不能为空
CaseZero();
break;
case :
CaseOne();
break;
case :
default;//wrong,格式不正确
CaseTwo();
break;
}
18.写一个HTML页面,实现以下功能,左键点击页面时显示“您好”,右键点击时显示“禁止右键”。并在2分钟后自动关闭页面。
<script *** script>
setTimeout('window.close();', 3000);//1200
function show(){
if (window.event.button == 1){
alert("您好");
} else if (window.event.button == 2){
alert("禁止右键");
}
}
19.<%# %> 和 <% %> 有什么区别?<%# %>表示绑定的数据源;<% %>是服务器端代码块。
20.重载与覆盖的区别?
1、方法的覆盖是子类和父类之间的关系,是垂直关系;方法的重载是同一个类中方法之间的关系,是水平关系;
2、覆盖只能由一个方法,或只能由一对方法产生关系,方法的重载是多个方法之间的关系;
3、覆盖要求参数列表相同;重载要求参数列表不同;
4、覆盖关系中,调用那个方法体,是根据对象的类型(对像对应存储空间类型)来决定;重载关系,是根据调用时的实参表与形参表来选择方法体的。
21.分析以下代码:
public static void test(string ConnectString)
{
System.Data.OleDb.OleDbConnection conn = new System.Data.OleDb.OleDbConnection();
conn.ConnectString = ConnectString;
try {
conn.Open();
...
} catch (Exception Ex){
MessageBox.Show(Ex.ToString());
} finally {
if (!conn.State.Equals(ConnectionState.Closed))
conn.Close();
}
}
以上代码可以正确使用连接池吗?如果传入的connectionString是一模一样的话,可以正确使用连接池。不过一模一样的意思是,连字符的空格数,顺序完全一致。
22.下面的例子中
class Program
{
static void Main(string[] args)
{
Console.WriteLine("X = {0}, Y = {1}", A.X, B.Y);//X = 2, Y = 1
Console.ReadKey();
}
}
class A
{
public static int X;
static A()
{
X = B.Y + ;
}
}
class B
{
public static int Y = A.X + ;
static B() { }
}
dotNET面试(一)的更多相关文章
- dotNET面试(三)
1.简述 private. protected. public. internal 修饰符的访问权限.private : 私有成员, 在类的内部才可以访问 ,也就是类内部的函数等成员可以访问.prot ...
- dotNET面试(二)
值类型与引用类型 1.值类型和引用类型的区别? 值类型包括简单类型.结构体类型和枚举类型,引用类型包括自定义类.数组.接口.委托等. 赋值方式:将一个值类型变量赋给另一个值类型变量时,将复制包含的值. ...
- 我为NET狂~群福利:逆天书库
我为NET狂-官方群① 238575862 爱学习,爱研究,福利不断,技能直彪~~ 最近更新:2016-08-30,欢迎补充 暂缺PDF: │ SQL Server 2012 Analysis Ser ...
- C#源码500份
C Sharp 短信发送平台源代码.rar http://1000eb.com/5c6vASP.NET+AJAX基础示例 视频教程 http://1000eb.com/89jcC# Winform ...
- .NET 2.0 参考源码索引
http://www.projky.com/dotnet/2.0/Microsoft/CSharp/csharpcodeprovider.cs.htmlhttp://www.projky.com/do ...
- .NET工程师面试宝典
.Net工程师面试笔试宝典 传智播客.Net培训班内部资料 这套面试笔试宝典是传智播客在多年的教学和学生就业指导过程中积累下来的宝贵资料,大部分来自于学员从面试现场带过来的真实笔试面试题,覆盖了主流的 ...
- 传智播客DotNet面试题
技术类面试.笔试题汇总(整理者:杨中科,部分内容从互联网中整理而来) 注:标明*的问题属于选择性掌握的内容,能掌握更好,没掌握也没关系. 下面的参考解答只是帮助大家理解,不用背,面试题.笔试题千变万化 ...
- .NET面试必备(整理)
1.简述 private. protected. public. internal 修饰符的访问权限. private : 私有成员, 在类的内部才可以访问.public : 公共成员,完全公开,没有 ...
- C#130问,初级程序员的面试宝典
首先介绍下,目前C#作为一门快速开发的语言,在面试的过程中需要注意的技术知识点,了解下面的知识点对于初级工程师入职非常有帮助,也是自己的亲身体悟. 1. 简述 private. protecte ...
随机推荐
- DB事务隔离级别
原创转载请注明出处:https://www.cnblogs.com/agilestyle/p/11393417.html 事务隔离级别 Note: Oracle默认的隔离级别是 READ COMMIT ...
- android智能手机如何查看APK包名
工具/原料 智能手机一部 USB线一根 方法/步骤 1 首先.使用USB线,将电脑和手机连起来.注意.手机的USB调试默认需要打开,如下图所示. 2 然后启动电脑端的cmd应用,进入dos界面 ...
- 替换OSD操作的优化与分析
http://www.zphj1987.com/2016/09/19/%E6%9B%BF%E6%8D%A2OSD%E6%93%8D%E4%BD%9C%E7%9A%84%E4%BC%98%E5%8C%9 ...
- 接触python的第1天:测试hello world
在python3.8的平台可以输入了hello world, ide还能当做计算器 >>> print("hello world") hello world &g ...
- JS谷歌浏览器断点调试
1.找到对应的文件 按F12打开网页调试工具,默认打开的是Elements,显示的是网页标签元素.选择Source,在左侧找到对应的js代码文件(这里是在page标签上找到的) 1.1.如何找到web ...
- linux 下启动tomcat 时没有执行权限
原因: 没有权限 解决 : chmod 777 *.sh Linux下启动tomcat
- flutter中的列表组件
列表布局是我们项目开发中最常用的一种布局方式.Flutter 中我们可以通过 ListView 来定义列表项,支持垂直和水平方向展示.通过一个属性就可以控制列表的显示方向.列表有以下分类: 垂直列表 ...
- Alex and Number
Alex and Number 时间限制: 1 Sec 内存限制: 128 MB提交: 69 解决: 12[提交][状态] 题目描述 Alex love Number theory. Today ...
- 前端每日实战:84# 视频演示如何用纯 CSS 创作一个极品飞车 loader
效果预览 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/MBbEMo 可交互视频 此视频是可 ...
- 从单片机到系统之--uboot启动arm linux
UBOOT官网下载地址:http://ftp.denx.de/pub/u-boot/ 很详细的UBOOT解释: https://www.crifan.com/files/doc/docbook/ubo ...