法组成
21. 请解释这种语法现象 Session["name"]=20; 给类的索引器赋值. 装箱与取消装箱是什么含义?
22.
装箱是值类型到 object 类型或到该值类型所实现的任何接口类型的隐式转换.将一 个值的值装箱会分配一个对象实例并将该值复制到新的对象中.
取消装箱是从 object 类型到值
类型或从接口类型到实现该接口的值类型的 显式转换.取消装箱操作包括:
检查对象实例,确保它是给定值类型的一个装箱值. 将该值从实例复制到值类型变量中.
23.
一个构造函数能否调用另一个构造函数,如果能请写出简单的代码 能.
class class1
{ int y; public class1(){ new class1(5); } public class1(int i) { this.y=i; } public void x(){ Console.WriteLine(y.ToString()); } static void Main(string[] args) { // class1 cl=new class1(5); cl.x(); } }
24. 请编写创建一个线程的代码. using System; using System.IO; using System.Threading ; class MyThread{ public int count; string thrdName; public MyThread(string name){ count=0; thrdName=name; } public void run(){ Console.WriteLine(thrdName+"starting."); do{ Thread.Sleep(500); Console.WriteLine("In"+thrdName+", count is "+count); count++; }while(count<10); Console.WriteLine(thrdName+" terminating."); } }
class MultiThread{ public static void Main(){ Console.WriteLine("Main thread starting."); MyThread mt=new MyThread("Child #1"); Thread newThrd=new Thread(new ThreadStart(mt.run)); newThrd.Start(); do { Console.Write("."); Thread.Sleep(100); }while(mt.count!=10); Console.WriteLine("Main thread ending."); } } 25. Params 是什么含义?
params 关键字可以指定在参数数目可变处采用参数的方法参数.在方法声明中 的 params 关键字之后不允许任何其他参数,并且在方法声明中只允许一个 params 关键字.
26. C#中有没有运算符重载?能否使用指针?
重载操作符意味着使该操作符具有不同的行为 使用操作符可以使方程式简单易懂 重载运算符使用 operator 关键字来创建一个运算符方法
能使用指针, 在 C# 中很少需要使用指针,但仍有一些需要使用的情况.例如, 在下列情况中使用允许采用指针的不安全上下文是正确的:
处理磁盘上的现有结构 涉及内部包含指针的结构的高级 COM 或平台调用
方案 性能关键代码
不鼓励在其他情况下使用不安全上下文.具体地说,不应该使用不安全上下文尝 试在 C# 中编写 C 代码.
27.
C#中有很多类被定义为 public 有什么意义?
Public 关键字将公共访问权限授予一个或多个被声明的编程元素.对公共元素的可访问性 没有限制. 28. Internal 修饰符有什么含义?
internal 关键字是类型和类型成员的访问修饰符.内部成员只有在同一程序集 中的文件内才是可访问的.内部访问通
常用于基于组件的开发,因为它使一组组 件能够以私有方式进行合作,而不必向应用程序代码的其余部分公开.例如,用 于生成图形用户界面的框架可以提供"控件"类和"窗体"类, 这些类通过使用
具有内部访问能力的成员进行合作.由于这些成员是内部的,它们不向正在使用 框架的代码公开. 在定义具有内部访问能力的成员的程序集外部引用该成员是错 误
的.
29.
JAVA 的代码是半编译半解释的 C#的代码是否也是这样 C#源码经过语言编译器执行第一次编译,变为中间语言,然后再由 CLR 编译成可执
行代码. 30. 私有程序集与共享程序集有什么区别? 私有
程序集: 默认情况下,C# 程序编译为私有程序集 需要放在应用程序所在的文件夹中 程序集的名称在应用程序中应当是唯一的 共享程序集: 可以被不同的应用程序共享 在所有使用程序集的应用程序中,程序集名称应当是唯一的 放在全局程序集缓存中 31. 请解释进程与线程的区别?进程与程序的区别? 用最简短的话来说, 进程就是当前