1、是否可以从一个static方法内部发出对非static方法的调用?
答:不可以。因为非static方法与对象相关联,必须创建一个对象后,才可以在该对象上进行方法调用,而static方法调用时不需要创建对象,可以直接调用。
也就是说,当一个static方法被调用时,可能还没有创建任何实例对象,如果从一个static方法中调用一个static方法,那么非static方法没有关联的对象,所以不可以。
2、说出一些常用类、接口,请各列举5个。
答:类:StreamReader、StringBuilder、SqlConnection、FileStream、File、Regex
接口:IDisposable、IEnumerable、IComparable、ICollection、IList
3、C#支持多重继承么?
答:类之间不支持,接口之间支持。
类对接口叫做实现,不叫继承。
类是爹、接口是能力,能力可以有多个,但不能有多个爹。
4、简单说明数据库建立索引的优缺点。
答:优点,使用索引可以加快数据的查询速度。
缺点,插入数据过程中会建立索引,所以会降低数据的插入、更新速度,还会占用磁盘。
如果一个表查询比写入频繁可以建立索引,如果写入比查询频繁,就不建议建立索引。
5、SQL注入漏洞产生的原因?如何防止。
答:程序开发过程中不注意书写sql语句和对特殊字符进行过滤,导致客户端可以提交一些sql语句正常执行。
1、sql语句尽量不要省略引号和单引号。
2、过滤掉SQL语句中的一些关键字。
3、控制错误信息,不要再浏览器上输出错误信息。
4、使用SqlParameter类,尽量不要拼接字符串SQL语句。