|
1、什么是面向对象 面向对象OO = 面向对象的分析OOA + 面向对象的设计OOD + 面向对象的编程OOP; 2、简述 private、 protected、 public、 internal 修饰符的访问权限。 private : 私有成员, 在类的内部才可以访问。 3、ADO.NET中的五个主要对象 Connection:主要是开启程序和数据库之间的连结。没有利用连结对象将数据库打开,是无法从数据库中取得数据的。这个物件在ADO.NET 的最底层,我们可以自己产生这个对象,或是由其它的对象自动产生。 4、列举ASP.NET 页面之间传递值的几种方式。 1.使用QueryString, 如....?id=1; response. Redirect().... 5、C#中的委托是什么?事件是不是一种委托? 委托可以把一个方法作为参数代入另一个方法。 6、override与重载的区别 重载是方法的名称相同。参数或参数类型不同,进行多次重载以适应不同的需要 7、描述一下C#中索引器的实现过程,是否只能根据数字进行索引? 不是。可以用任意类型。 8、三层架构通 常意义上的三层架构就是将整个业务应用划分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。 9、MVC模式 MVC(Model View Controller)模型-视图-控制器 10、什么是装箱和拆箱? 装箱:从值类型接口转换到引用类型。 11、什么叫应用程序域 一种边界,它由公共语言运行库围绕同一应用程序范围内创建的对象建立(即,从应用程序入口点开始,沿着对象激活的序列的任何位置)。 12、CTS、CLS、CLR分别作何解释 CTS:Common Type System 通用系统类型。 13、在dotnet中类(class)与结构(struct)的异同? Class可以被实例化,属于引用类型,是分配在内存的堆上的 14、堆和栈的区别? 栈是编译期间就分配好的内存空间,因此你的代码中必须就栈的大小有明确的定义; 15、能用foreach遍历访问的对象的要求 需要实现IEnumerable接口或声明GetEnumerator方法的类型。 16、GC是什么? 为什么要有GC? GC是垃圾收集器。程序员不用担心内存管理,因为垃圾收集器会自动进行管理。 17、String s = new String("xyz");创建了几个String Object? 两个对象,一个是“xyx”,一个是指向“xyx”的引用对象。 18、值类型和引用类型的区别? 1.赋值方式不同:基于值类型的变量直接包含值。将一个值类型变量赋给另一个值类型变量时,将复制包含的值。引用类型变量的赋值只复制对对象的引用,而不复制对象本身。 19、C#中的接口和类有什么异同。 不同点: 20、abstract class和interface有什么区别? 相同点: 21、sleep() 和 wait() 有什么区别? sleep()方法是将当前线程挂起指定的时间。 22、是否可以继承String类? String类是final类故不可以继承。 23、try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不会被执行,什么时候被执行,在return前还是后? 会执行,在return前执行。 24、new 关键字用法 new 运算符 用于创建对象和调用构造函数。 25、如何把一个Array复制到ArrayList里 实现1 string[] s ={ "111", "22222" }; ArrayList list = new ArrayList(); list.AddRange(s); 26、DataGrid的Datasouse可以连接什么数据源 DataTable 27、描述线程与进程的区别? 1.线程(Thread)与进程(Process)二者都定义了某种边界,不同的是进程定义的是应用程序与应用程序之间的边界,不同的进程之间不能共享代码和数据空间,而线程定义的是代码执行堆栈和执行上下文的边界。 28、什么是强类型,什么是弱类型?哪种更好些?为什么? 强类型是在编译的时候就确定类型的数据,在执行时类型不能更改,而弱类型在执行的时候才会确定类型。 29、什么是反射? 程序集包含模块,而模块又包括类型,类型下有成员,反射就是管理程序集,模块,类型的对象,它能够动态的创建类型的实例,设置现有对象的类型或者获取现有对象的类型,能调用类型的方法和访问类型的字段属性。它是在运行时创建和使用类型实例 30、DateTime是否可以为null? 不能,因为其为Struct类型,而结构属于值类型,值类型不能为null,只有引用类型才能被赋值null 有用,实现了IDisposiable的类在using中创建,using结束后会自定调用该对象的Dispose方法,释放资源。不明白什么是确定性终结 32、Assembly.Load("foo.dll"); 这句话是否正确? 错误,正确的应该是Assembly.Load("foo"); 或者Assembly.LoadFrom("foo.dll"); 33、Session有什么重大BUG,微软提出了什么方法加以解决? 是iis中由于有进程回收机制,系统繁忙的话Session会丢失,可以用Sate server或SQL Server数据库的方式存储Session,不过这种方式比较慢,而且无法捕获Session的END事件。 34、XML 与 HTML 的主要区别 1. XML是区分大小写字母的,HTML不区分。 或者之类的结束 标记。在XML中,绝对不能省略掉结束标记。
35、重载与覆盖的区别? 1.方法的覆盖是子类和父类之间的关系,是垂直关系;方法的重载是同一个类中方法之间的关系,是水平关系 36、请编程遍历页面上所有TextBox控件并给它赋值为string.Empty?
foreach (System.Windows.Forms.Control control in this.Controls)
{ if (control is System.Windows.Forms.TextBox) { System.Windows.Forms.TextBox tb = (System.Windows.Forms.TextBox)control; tb.Text = String.Empty; } } 37、根据线程安全的相关知识,分析以下代码,当调用test方法时i>10时是否会引起死锁?并说明理由。
public void test(int i)
{ lock (this) { if (i > 10) { i--; test(i); } } } 不会发生死锁,(但有一点int是按值传递的,所以每次改变的都只是一个副本,因此不会出现死锁。但如果把int换做一个object,那么死锁会发生) 程序代码
class Class1
{ private string str = "Class1.str"; private int i = 0; static void StringConvert(string str) { str = "string being converted."; } static void StringConvert(Class1 c) { c.str = "string being converted."; } static void Add(int i) { i++; } static void AddWithRef(ref int i) { i++; } static void Main() { int i1 = 10; int i2 = 20; string str = "str"; Class1 c = new Class1(); Add(i1); AddWithRef(ref i2); Add(c.i); StringConvert(str); StringConvert(c); Console.WriteLine(i1); Console.WriteLine(i2); Console.WriteLine(c.i); Console.WriteLine(str); Console.WriteLine(c.str); } }
![]() 39、写出程序的输出结果
程序代码
public abstract class A
{ public A() { Console.WriteLine('A'); } public virtual void Fun() { Console.WriteLine("A.Fun()"); } } public class B : A { public B() { Console.WriteLine('B'); } public new void Fun() { Console.WriteLine("B.Fun()"); } public static void Main() { A a = new B(); a.Fun(); } }
![]() 40、写出程序的输出结果 程序代码
public class A
{ public virtual void Fun1(int i) { Console.WriteLine(i); } public void Fun2(A a) { a.Fun1(1); Fun1(5); } } public class B : A { public override void Fun1(int i) { base.Fun1(i + 1); } public static void Main() { B b = new B(); A a = new A(); a.Fun2(b); b.Fun2(a); } } ![]() (责任编辑:admin) |










骆驼户外男 真皮磨砂日常休闲鞋 低帮 2011秋冬新款 专柜正品特价