40. 在下面的例子里
using System;
class A
{
public A()
{
PrintFields();
}
public virtual void PrintFields(){}
}
class B:A
{
int x=1;
int y;
public B()
{
y=-1;
}
public override void PrintFields()
{
Console.WriteLine(“x={0},y={1}”,x,y);
}
当使用 new B() 创建 B 的实例时,产生什么输出?
答:x=1,y=0。
41.SQLSERVER 服务器中,给定表 table1 中有两个字段 ID 、 LastUpdateDate , ID 表示更新的事务号, LastUpdateDate 表示更新时的服务器时间,请使用一句 SQL 语句获得最后更新的事务号
select ID from table1 order by LastUpdateData desc
42. 写出一条 Sql 语句:取出表 A 中第 31 到第 40 记录( SQLServer, 以自动增长的 ID 作为主键 , 注意: ID 可能不是连续的。
select top 10 * from A where id not in (select top 30 id from A)
43. 接口是否可继承接口 ? 抽象类是否可实现 (implements) 接口 ? 抽象类是否可继承实体类 (concrete class)?
接口可以继承接口。抽象类可以实现 (implements) 接口,抽象类是否可继承实体类,但前提是实体类必须有明确的构造函数。
44. 构造器 Constructor 是否可被 override?
构造器 Constructor 不能被继承,因此不能重写 Overriding ,但可以被重载 Overloading。
45. 是否可以继承 String 类 ?
String 类是 final 类故不可以继承。
46.List, Set, Map 是否继承自 Collection 接口 ?
List,Set 是。 Map 不是。
47. 数组有没有 length() 这个方法 ? String 有没有 length() 这个方法?
没有 , 有这个属性。 String 有这个方法。
48.sleep() 和 wait() 有什么区别 ?
sleep() 方法是使线程停止一段时间的方法。在 sleep 时间间隔期满后,线程不一定立即恢复执行。这是因为在那个时刻,其它线程可能正在运行而且没有被调度为放弃执行,除非 (a) “醒来”的线程具有更高的优先级
(b) 正在运行的线程因为其它原因而阻塞。
wait() 是线程交互时,如果线程对一个同步对象 x 发出一个 wait() 调用,该线程会暂停执行,被调对象进入等待状态,直到被唤醒或等待时间到。
49.short s1 = 1; s1 = s1 + 1; 有什么错 ? short s1 = 1; s1 += 1; 有什么错 ?
short s1 = 1; s1 = s1 + 1; 有错, s1 是 short 型, s1+1 是 int 型 , 不能显式转化为 short 型。可修改为 s1 =(short)(s1 + 1) 。 short s1 = 1; s1 += 1 正确。
50.Session 有什么重大 BUG ,微软提出了什么方法加以解决?
iis 中由于有进程回收机制,系统繁忙的话 Session 会丢失,可以用 Sate server 或 SQL Server 数据库的方式存储 Session 不过这种方式比较慢,而且无法捕获 Session 的 END 事件。
51. 进程和线程的区别?
进程是系统进行资源分配和调度的单位;线程是 CPU 调度和分派的单位,一个进程可以有多个线程,这些线程共享这个进程的资源。
52. 产生一个 int 数组,长度为 100 ,并向其中随机插入 1-100 ,并且不能重复。
int[] intArr=new int[100];
ArrayList myList=new ArrayList();
Random rnd=new Random();
while(myList.Count<100)
{
int num=rnd.Next(1,101);
if(!myList.Contains(num))
myList.Add(num);
}
for(int i=0;i<100;i++)
intArr[i]=(int)myList[i];
53. 下面的代码中有什么错误吗? _______
using System;
class A
{
public virtual void F()
{
Console.WriteLine(“A.F”);
}
}
abstract class B:A
{
public abstract override void F();
}
abstract override 是不可以一起修饰。
54. 下面这段代码有错误么?
switch (i)
{
case(): 答: //case() 条件不能为空
CaseZero();
break;
case 1:
CaseOne();
break;
case 2:
dufault; // 格式不正确,应写成default:
CaseTwo();
break;
}
55. 在 .Net 中,类 System.Web.UI.Page 可以被继承么?
可以。
56. 在 .net ( C# or vb.net )中如何取消一个窗体的关闭
e.Cancel=true。
57. 在 Asp.net 中所有的自定义用户控件都必须继承自 ________.
Control。
58. 什么是 code-Behind 技术?
代码分离。 HTML 代码写在前台 ,C# 代码写在后台 。
59. 装箱与拆箱操作是否是互逆的操作?
不是互逆的操作。
60. 哪个是可以变长的数组?
ArrayList 。
61. 用户自定义异常类需要从以下哪个类继承?
Exception 。
62 .Net 依赖以下哪项技术实现跨语言互用性?
CLS 。
63. 以下哪个类是 int 的基类? ( B )
A.Int32 B.Object C.ValueType D.Int16
64. 下列描述错误的是( d )
a) 类不可以多重继承而接口可以;
b) 抽象类自身可以定义成员而接口不可以;
c) 抽象类和接口都不能被实例化;
d) 一个类可以有多个基类和多个基接口 ;
65. 下列关于构造函数的描述正确的是( c )
a) 构造函数可以声明返回类型。
b) 构造函数不可以用 private 修饰
c) 构造函数必须与类名相同
d) 构造函数不能带参数
66. 以下是一些 C# 中的枚举型的定义,其中错误的用法有( d )
a)public enum var1{ Mike = 100, Nike = 102, Jike }
b)public enum var1{ Mike = 100, Nike, Jike }
c)public enum var1{ Mike=-1 , Nike, Jike }
d)public enum var1{ Mike , Nike , Jike }