1. 面向对象的三大特性
封装:把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。
继承:就是让一个类型的对象拥有另一个类型的对象的属性的方法。
多态:同一个类型的对象在执行同一个方法时,可以表现出多种行为特征。
2. C#中几种循环的方法
while循环:通常用于不确定的循环次数时去使用它
do...while循环:功能上和while基本类似,不同之处它保证了循环至少执行一次
for 循环:主要用于循环次数固定的循环
foreach循环:是一种十分高效的循环,主要用来遍历IEnumerable的容器类型,比如ArrayList、List等都可以使用
3. 如何声明一个类不能被继承
C#通过关键字 sealed 可以声明一个类型不能被继承。例: public sealed class A
静态类 public static class A
4. 静态类和静态方法的好处
好处是:在外部调用静态方法时,可以使用"类名.方法名"的方式,无需创建对象。静态类最大的特点就是共享、执行速度快,而且可以防止继承.
缺陷是:静态方法在访问本类的成员时,只允许访问静态成员(即静态成员变量和静态方法),而不允许访问实例成员变量和实例方法;实例方法则无此限制
5. 静态类与普通类的区别?
静态类与非静态类的重要区别在于静态类不能实例化,也就是说,不能使用 new 关键字创建静态类类型的变量。在声明一个类时使用static关键字,具有两个方面的意义:首先,它防止程序员写代码来实例化该静态类;其次,它防止在类的内部声明任何实例字段或方法。
6. C#中string 和String 有什么区别
两者本质上没有任何区别,都是System.String,只是书写习惯问题。可以认为,string是System.String的别名而已
7. 简述 private、 protected、 public、 internal 修饰符的访问权限
private:私有成员,在类的内部才可以访问
protected:保护成员,该类内部和继承类中可以访问
public:公共成员,完全公开,没有访问限制
internal:当前程序集内可以访问
8. 简述ADO.NET中的五个主要对象
Connection:主要是开启程序和数据库之间的连接
Command:主要可以用来对数据库发出一些指令,例如可以对数据库下达查询、新增、修改、删除数据等指令,以及调用存在数据库中的存储过程等
DataAdapter:主要是在数据源以及DataSet之间执行数据传输的工作,它可以透过Command对象下达命令后,并将取得的数据放入DataSet对象中
DataSet:这个对象可以视为一个暂存区(Cache),可以把从数据库中所查询到的数据保留起来,甚至可以将整个数据库显示出来
DataReader:当我们只需要循序的读取数据而不需要其它操作时,可以使用DataReader对象。
9. ADO.NET支持哪两种方式来访问关系数据库
连接模式:可通过command(命令)对象执行SQL语句或存储过程
非连接模式:在数据集方式中,操作数据的基本过程是首先使用数据适配器将数据加载到内存中(数据集对象),在数据集对象中操作数据,然后再使用数据适配器将更改会写到数据库中。
10. 重载(Overload )和覆写(Override)的区别
重载方法名相同,参数列表不同(参数类型及个数);覆写方法名、返回值类型、参数类型及个数完全相同