文档介绍:1 (1)面向对象的语言具有__继承性_性、_封装性_性、_多态性性。
(2)能用foreach遍历访问的对象需要实现_ IEnumerable 接口或声明_ GetEnumerator 方法的类型。#中的三元运算符是__?:__GetEnumerator IEnumerable
,整数a将会被__装箱___?
?
static const int A=1;这段代码有错误么?是什么? const成员都是static所以应该去掉static
f=-;
int i=(int)f;
i的值现在是_-123____?
==,有什么错误么? 要同时修改Equale和GetHash() ? 重载了"==" 就必须重载"!="
细心的朋友可能发现,C#虽然可以重载操作符,但和C++比较起来,却有很大的不同。定义的时候重载操作符方法必须是static,而且至少有一个参数(一目和二目分别是一个和两个),C#和C++比起来,最重要的特征是:<、>;==、!=;true、false必须成对出现,即重载了“<”就必须重载“>”,重载了“==”就必须重载“!=”,重载了“true”就必须重载“false”;另外,还必须实现基类object的两个虚方法:GetHashCode()和Equals(object obj)。
delegate ___?
delegate void MyDelegate(int i);
class Program
{
public static void Main()
{
TakesADelegate(new MyDelegate(DelegateFunction));
}
public static void TakesADelegate(MyDelegate SomeFunction)
{
SomeFunction(21);
}
public static void DelegateFunction(int i)
{
("Called by delegate with number: {0}.", i);
}
}
?不可被继承
密封类不能被继承。将密封类用作基类是错误的。在类声明中使用 sealed 修饰符可防止继承此类。
不允许将 abstract 修饰符用于密封类。
结构是隐式密封的;因此它们不能被继承。
_______?
[serializable]___?
,这是因为有了_ gC __?
?_ abstract override 是不可以一起修饰______
using System;
class A
{
public virtual void F(){
("");
}
}
abstract class B:A
{
public abstract override void F();
}
,则在T的程序文本外部,_不可以_(可以 or 不可以)从T派生出新的类,_不可以_(可以 or 不可以)直接创建T的任何实例。
?case():不行 default;
switch (i){
case():
CaseZero();
break;
case 1:
CaseOne();
break;
case 2:
dufault;
CaseTwo();
break;
}
, 可以被继承么?可以
2. 不定项选择:
(1) 以下叙述正确的是: B C
A. 接口中可以有虚方法。B. 一个类可以实现多个接口。 C. 接口不能被实例化。 D. 接口中可以包含已实现的方法。
   (2) 从数据库读取记录,你可能用到的方法有:B C D
      A. ExecuteNonQuery            B. ExecuteScalar      C. Fill