dotNET面试(三)(6)

电脑杂谈  发布时间:2019-04-16 14:12:19  来源:网络整理

17、String s = new String("xyz"); 创建了几个String Object?

两个对象,一个是“xyx”,一个是指向“xyx”的引用对象。

18、值类型和引用类型的区别?

如果返回类型不是引用,在调用函数的地方会将函数返回值复制给临时对象。1、 autoload 自动引用类、不用包含类,call屏蔽调用类方法不存在的错误,clone 是复制clone 对象的所有内容,但clone之后,是不同的对象。只负责克隆按值传递的数据(比如基本数据类型、string类型),而不复制它所引用的对象,换言之,所有的对其他对象的引用都仍然指向原来的对象。

2.值类型不可能派生出新的类型:所有的值类型均隐式派生自 System.ValueType。但与引用类型相同的是,结构也可以实现接口。

3.值类型不可能包含 null 值:然而,可空类型功能允许将 null 赋给值类型。

4.每种值类型均有一个隐式的默认构造函数来初始化该类型的默认值。

19、C#中的接口和类有什么异同。

不同点:

不能直接实例化接口。

接口不包含方法的实现。

接口可以多继承,类只能单继承。

类定义可在不同的源文件之间进行拆分。

相同点:

接口、类和结构都可以从多个接口继承。

接口类似于抽象基类:继承接口的任何非抽象类型都必须实现接口的所有成员。

接口和类都可以包含事件、索引器、方法和属性。

20、abstract class和interface有什么区别?

相同点:

都不能被直接实例化,都可以通过继承实现其抽象方法。

不同点:

接口支持多继承;抽象类不能实现多继承。

接口只能定义行为;抽象类既可以定义行为,还可能提供实现。

接口可以用于支持回调(CallBack);抽象类不能实现回调,因为继承不支持。

接口只包含方法(Method)、属性(Property)、索引器(Index)、事件(Event)的签名,但不能定义字段和包含实现的方法;

抽象类可以定义字段、属性、包含有实现的方法。

接口可以作用于值类型(Struct)和引用类型(Class);抽象类只能作用于引用类型。例如,Struct就可以继承接口,而不能继承类。

21、是否可以继承String类?

String类是sealed类故不可以继承。 Sealed类是指密封类

hidden url 重写76、try 里有一个 return语句,那么紧跟在这个try后的finally 里的code会不会76、try 里有一个 return语句,那么紧跟在这个try后的finally 里的code会不会7766、、ttrryy 里里有有一一个个rreettuurrnn语语句句,,那那么么紧紧跟跟在在这这个个ttrryy后后的的ffiinnaallllyy 里里的的ccooddee会会不不会会 81、编程题: 写一个singleton出来。----58.try{}里有一个return语句,那么紧跟在这个try后的finally{}里的code会不会被执行,。

会执行,在return前执行。

加分的补充回答(也助记):读取中数据的条数的程序

如果C#设计的是先执行cmd.Dispose()再执行return就会出现return执行失败了,因为cmd已经Dispose了。

因为C#就是这么设计的,finally中的代码一般都是释放资源,清除对象的,而return一般是用来返回数据的。

23、new关键字用法

new 运算符 用于创建对象和调用构造函数。


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/jisuanjixue/article-93766-6.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    • 秦宁公
      秦宁公

      这种也叫经济学家

    • 张冠
      张冠

      鼓励那些国家和中国对着干

    热点图片
    拼命载入中...