1.简述public、private、protected、Internal修饰符的访问权限

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

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

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

Internal:在同一命名空间类才可以访问。

2.列举ASP.NET页面之间传值的几种方式

(1) QueryString:传递的参数会显示在url中,不安全并且不能传递数组或对象。

(2) Session变量:常用于用户身份的验证,安全性较高,但Session变量存储过多的数据会消耗过多的服务器资源。

(3) Server.Transfer:流程从当前页面迁移到另一个页面保持着服务资源,数据库稳定安全,但性能相对弱。

(4) Cookie传值:以文本文件的形式存在磁盘中,虽然方便,保存时间可以自由设置,但安全性不高。

(5) Application传值:对象的作用范围是全局,对所有用户都有效,个人的敏感数据则不用这种方法存储。

3.重载(overload)和重写(override)的区别

overload重载是方法的名称相同,参数的个数或参数类型不同。override重写是重写某个方法的业务逻辑。

4.string和StringBuild的区别

string对象长度是不可以变的。

StringBuild是可变的,常用于字符串的拼接,效率比直接操作string高。

5.break和continue的区别

break是结束当前循环。

continue是跳出本次循环,继续下一次循环。

6.List和ArrayList的区别

List是接口类,ArrayList类实现了这个接口,也就是说ArrayList是List的子类。

7.进程和线程的区别

进程是系统进行资源分配和调度的单位。

线程是CPU调度和分派的单位,一个进程可以有多个线程,这些线程共享这个进程的资源。

8.堆和栈的区别

栈是编译期间就分配好的内存空间,代码中栈的大小要有明确的定义;局部值类型变量、值类型参数等都在栈内存中。

堆是程序运行期间动态分配的内存空间,可以根据程序的运行情况确定要分配的堆内存大小。

9.C#中委托和事件 

委托是一个类,它定义了方法的类型,可以把方法作为参数进行传递。

事件是一个特殊的委托,委托和事件就类似于字段和属性的关系,事件是对委托做了一个封装。

10.反射和序列化

反射是管理程序集、模块、类型的对象,可以动态的获得类型或者实例的信息。

序列化是将对象转换为容易传输的格式的过程。例如,序列化一个对象,通过HTTP在客户端和服务器之间传输该对象,在另一端反序列化构造该对象。

11.什么是事务?使用事务的语句有哪些?

事务是一种机制,是一个操作序列,它包括了一组数据库操作命令,而且所有的命令作为一个整体向系统提交或者撤消操作请求,要么全部执行,要么全部不执行。

begin    transaction

commit    transaction

rollback   transaction

12.你对泛型了解吗?简明说一下泛型的优点?

泛型:通过参数化类型来实现在同一份代码上操作多种数据类型。利用"参数化类型"将类型抽象化,从而实现灵活的复用。

优点是类型安全和减少装箱、拆箱。提高性能、类型安全和质量,减少重复性的编程任务。

13.什么是sql注入?如何避免sql注入?

用户根据系统的程序构造非法的参数从而导致程序执行不是程序员期望的恶意的SQL语句。

使用参数化的SQL就可以避免SQL注入,使用参数化1' or 1 = 1

14.三层架构

表现层(UI):页面的视图。

业务逻辑层(BLL):对数据层的操作和业务逻辑的处理。

数据访问层(DAL):对数据库的增、删、改、查。

15.MVC模式

MVC(Model View Controller)模型-视图-控制器

模型负责业务领域,视图负责显示,控制器负责把数据读取出来填充到模型后交给视图去处理,MVC最大的好处是将逻辑和页面分离。

16.如何理解.NET的垃圾回收机制

每次使用new运算符创建对象时,运行库都会为新对象分配空间。但是内存不可能无限大,所以需要垃圾回收器释放一些内存。当一个对象没有任何引用的时候,垃圾回收器不定时自动进行回收,可以调用GC.Collect()让GC立即回收。GC不能回收非托管资源,对于非托管资源一般都是实现了IDisposable接口,然后使用using关键字进行资源的回收。

17.提高.NET的性能

(1) 使用异步方式调用web服务和远程对象,避免在请求的处理过程中对web服务和远程对象的同步调用,因为占用了线程池中的工作线程,影响了web服务器响应其他请求的能力。

(2) 使用适当的caching策略来提高性能。

(3) 判断字符串不要用" "比较。

(4) 页面优化

(5) 尽量写存储过程,并优化查询语句

(6) 只读数据访问用sqlDataReader,不要用DataSet

18.请编程实现一个冒泡排序算法?

int [] array = new int [*] ;
  int temp = ;
  for (int i = ; i < array.Length - ; i++)
  {
    for (int j = i + ; j < array.Length ; j++)
    {
      if (array[j] < array[i])
      {
        temp = array[i] ;
        array[i] = array[j] ;
        array[j] = temp ;
      }
    }
  }

或者

public static void bubble_sort(int[] x)
{
for (int i = ; i < x.Length; i++)
{
for (int j = i; j < x.Length; j++)
{
if (x[i] < x[j])   //从大到小排序
{
int temp;
temp = x[i];
x[i] = x[j];
x[j] = temp;
}
}
}
}
static void Main(string[] args)
{
int[] arr = { , , , , , , ,,,};
bubble_sort(arr);
foreach (var a in arr)
{
Console.WriteLine(a );
}
}

19.写出一条Sql语句:取出表A中第31到第40记录(SQLServer,以自动增长的id作为主键,注意:id可能不是连续的)

select top 10 * from A where id not in (select top 30 id from A)

select top 10 * from A where id > (select max(id) from (select top 30 id from A )as A)

select id,row_number() over (order by id) as rowNum from A where rowNum between 31 and 40(推荐)

 20.一列数的规则如下: 1、1、2、3、5、8、13、21、34...... 求第30位数是多少, 用递归算法实现。

public class MainClass
{
public static void Main()
{
Console.WriteLine(Num());
}
public static int Num(int i)
{
if (i <= )
return ;
else if(i > && i <= )
return ;
else return Num(i -) + Num(i - );
}
}

.Net 题目的更多相关文章

  1. 谈谈一些有趣的CSS题目(十二)-- 你该知道的字体 font-family

    开本系列,谈谈一些有趣的 CSS 题目,题目类型天马行空,想到什么说什么,不仅为了拓宽一下解决问题的思路,更涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题 ...

  2. 谈谈一些有趣的CSS题目(十一)-- reset.css 知多少?

    开本系列,谈谈一些有趣的 CSS 题目,题目类型天马行空,想到什么说什么,不仅为了拓宽一下解决问题的思路,更涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题 ...

  3. 谈谈一些有趣的CSS题目(三)-- 层叠顺序与堆栈上下文知多少

    开本系列,讨论一些有趣的 CSS 题目,抛开实用性而言,一些题目为了拓宽一下解决问题的思路,此外,涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题中有你感觉 ...

  4. 一道返回num值的小题目

    题目描述: 实现fizzBuzz函数,参数num与返回值的关系如下: .如果num能同时被3和5整除,返回字符串fizzbuzz .如果num能被3整除,返回字符串fizz .如果num能被5整除,返 ...

  5. 谈谈一些有趣的CSS题目(一)-- 左边竖条的实现方法

    开本系列,讨论一些有趣的 CSS 题目,抛开实用性而言,一些题目为了拓宽一下解决问题的思路,此外,涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题中有你感觉 ...

  6. 谈谈一些有趣的CSS题目(二)-- 从条纹边框的实现谈盒子模型

    开本系列,讨论一些有趣的 CSS 题目,抛开实用性而言,一些题目为了拓宽一下解决问题的思路,此外,涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题中有你感觉 ...

  7. 谈谈一些有趣的CSS题目(四)-- 从倒影说起,谈谈 CSS 继承 inherit

    开本系列,讨论一些有趣的 CSS 题目,抛开实用性而言,一些题目为了拓宽一下解决问题的思路,此外,涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题中有你感觉 ...

  8. 谈谈一些有趣的CSS题目(五)-- 单行居中,两行居左,超过两行省略

    开本系列,讨论一些有趣的 CSS 题目,抛开实用性而言,一些题目为了拓宽一下解决问题的思路,此外,涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题中有你感觉 ...

  9. 谈谈一些有趣的CSS题目(六)-- 全兼容的多列均匀布局问题

    开本系列,谈谈一些有趣的 CSS 题目,题目类型天马行空,想到什么说什么,不仅为了拓宽一下解决问题的思路,更涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题 ...

  10. 谈谈一些有趣的CSS题目(七)-- 消失的边界线问题

    开本系列,谈谈一些有趣的 CSS 题目,题目类型天马行空,想到什么说什么,不仅为了拓宽一下解决问题的思路,更涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题 ...

随机推荐

  1. 玩玩负载均衡---在window与linux下配置nginx

      最近有些时间,开始接触负载均衡方面的东西,从硬件F5再到Citrix Netscalar.不过因为硬件的配置虽然不复杂,但昂贵的价格也让一般用户望而却步(十几万到几十万),所以只能转向nginx, ...

  2. pytho 基本数据类型

    1.字符串(引号) name = "........."  双引号引出来的都是字符串 name = """.........""& ...

  3. Sweet Round 1题解

    感谢各位参赛者,所有的题解如下: T1 syx的奖励 这题明显是签到题了吧,随便猜猜结论就A掉了 先说怎么做吧,把所有的可走的数gcd起来,然后再与n求gcd 如果为1,则输出n,若不为1,则输出-1 ...

  4. Hive的原生部署方式

    一.Hive的部署 1.官方文档 https://cwiki.apache.org/confluence/display/Hive/GettingStarted 2.前提条件 需要安装JDK1.7之上 ...

  5. 从零到Django大牛的的进阶之路02

    Cookie/Session Cookie Cookie以键值对的格式进行信息的存储. Cookie基于域名安全,不同域名的Cookie是不能互相访问的,如访问itcast.cn时向浏览器中写了Coo ...

  6. 旧iPhone遭禁,会让苹果产业链迎来新转机吗?

    过去几个月,苹果的日子并不好过,先是新iPhone定价过高导致销售疲软,股价连续下跌,万亿市值失守,被微软和亚马逊超越:手机销量上则被华为赶超,整个iPhone产业链都有点儿"哀鸿遍野&qu ...

  7. linux测试网速

    wget https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py python speedtest.py D ...

  8. 123.ModelForm的使用

    ModelForm 在我们的实例中,需要通过models.py中定义相关的模型字段,之后在forms.py中同样需要定义每个字段进行相应的验证,这样的话,我们会需要重复定义,这样的话,就相对比较麻烦, ...

  9. 7.10 Varnish 优化

  10. 【转】转帖并注释:Java中的事件处理机制--事件监听器的四种实现方式

    原文地址:http://blog.sina.com.cn/s/blog_4b650d650100nqws.html Java中四种事件监听器的实现方式分别为: 自身类做为事件监听器 外部类作为事件监听 ...