C#(.NET) 面试总结

using关键字

1. 作为指令用在命名空间里。using system

2.为命名空间或类型创建别名。using 别名 = 命名空间.类型

   当同一个cs引用2个不同的命名空间,但两个命名空间中包含了相同的类型时使用

3.作为语句使用。using(资源)  使用资源

//using语句之前声明对象
TextWriter tw = new TextWriter();//声明资源
using(tw) //using语句
    tw.writeLine("Long Long years ago.....");

//using语句之中声明对象
using(Font font = new Font("Arial", 10.0f)){
    //使用font
}

//using语句中声明并使用多个对象并且为同一类型时
using(Font font = new Font("Arial", 10.0f), font2 = new Font("Arial", 10.0f)){
    //使用font和font2
}

//using语句中声明并使用多个对象并且为不同类型时
using(IDisposable font = new Font("Arial", 10.0f), tw = new TextWriter()){
    //使用font和tw
}

使用规则:
1.using只能使用实现了IDisposable接口的类型,否则会出现编译错误
2.只适用单个非托管资源的情况,如果是多个非托管资源,当内层using发生错误时,将不能释放外层using资源

弊端:
1.虽然这种形式也能确保对资源的使用结束后总是调用Dispose方法,
但他不能防止在using语句已经释放了它的非托管之后使用该资源,导致了不一致的状态
因此他提供了较少的保护,不推荐使用

OverLoad和Override的区别

1.OverLoad重载。方法名相同,参数不同,与返回值类型无关

2.Override重写。出现于子类继承父类的方法中,方法名和参数和父类完全相同。

   当通过子类创建实例来调用这个方法时,将会调用子类的方法。相当于把父类的方法完全覆盖掉了,这也是面向对象多态的 一种表现。

   子类的访问权限只能比父类的访问权限更大,不能更小。当一个方法在父类中是private时,子类中写入和父类相同名称及参数的方法,不存在重写即覆盖关系。因为private声明的方法只在当前类中可以被访问,因此,子类的这个方法相当于重新创建了一个新的方法。

  构造器(构造方法)construct,不能被继承,因此不可以被重写。


数据库聚合函数

avg(列)、count(列)、count(*)、max(列)、min(列)、sum(列)

count(列):列值的计数,忽略空值            count(*):计数,包含空值


char和varchar和nvarchar的区别

1.char(n):索引效率极高,不管存储的数据是否到达了n个字节,都要去占用n个字节的空间,不足的话用空格填充,因此读取的时候需要用到trim()

2.varchar(n):长度为n个可变长度字节,非Unicode字符数据。存储大小为输入字节的实际长度。

3.nvarchar(n):包含n个可变长度字符,为Unicode字符数据。存储大小为输入字符的两倍。

如果包含特殊字符和中文,建议使用nvarchar。


字符集

Unicode:英文也是用2个字节,标点1个字节,汉字和标点都是2个字节,

ASCII:英文1个字节,汉字2个字节

UTF-8:英文1个字节,汉字3个字节

UTF-16:英文字母字符和汉字字符都是2个字节

UTF-32:所有字符都需要4个字节


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

dao啦C梦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值