bsp; if (key == arr[middle]) return middle; else if (key > arr[middle]) { left = middle + 1; } else { right = middle - 1; } } return -1; }
1. 面试时有相当大的可能会被问到面向对像的特点:继承,封装,多态。 封装:每个对象都包含它能进行操作所需要的所有信息,这个特性称为封装,因此对象不必依赖其他对象来完成自己的操作。 继承:对象的继承代表了一种“is-a”的关系,如果两个对象A和B,可以描述为“B是A”,则表明B可以继承A。 多态:表示不同的对象可以执行相同的动作,但要通过它们自己的实现代码来执行。
2.集合 ArrayList是命名空间System.Collections下的一部分,它是使用大小可以按需要动态增加的数组实现IList接口。
3.泛型 泛型是具有占位符(类型参数)的类、结构、接口和方法,这些占位符是类、结构、接口和方法所存储或使用的一个或多个类型的占位符。泛
型集合类可以将类型参数用作它所存储的对象的类型占位符;类型参数作为其字段的类型和其方法的参数类型出现。 IList arrA = new List();
通常情况下,都建议使用泛型集合,因为这样可以获得得类型安全的直接优点而不需要从基集合类型派生并实现类型的特定成员。此外,如果
集合元素为值类型,泛型集合的性能通常优于对应的非泛型集合类型(并优于从非泛基集合型类型派生的类型),因为使用泛型时不必对元素
进行装箱。
4.委托和事件 委托是对函数的封装,可以当作给方法的特征指定一个名称。而事件则是委托的一种特殊形式,当发生有意义的事情时,事件对象处理通知过
程。 委托是一
|