这道面试题目究竟该选择什么?
以下的C#代码,试图用来定义一个接口:
public interface IFile
{
int A;
int delFile()
{
A = 3;
}
void disFile();
}
关于以上的代码,以下描述错误的是( )。
a)以上的代码中存在的错误包括:不能在接口中定义变量,所以int A代码行将出现错误;
b)以上的代码中存在的错误包括:接口方法delFile是不允许实现的,所以不能编写具体的实现函数;
。
c)代码void disFile();声明无错误,接口可以没有返回值;
d)代码void disFile();应该编写为void disFile(){};
------解决方案--------------------)以上的代码中存在的错误包括:不能在接口中定义变量,所以int A代码行将出现错误;
------解决方案--------------------d)代码void disFile();应该编写为void disFile(){};
------解决方案--------------------d)代码void disFile();应该编写为void disFile(){};
选D
------解决方案--------------------我认为这道题的答案不是一个。
a 当然不对了;故一楼的选择正确;
二楼选b,我认为不对,因为在接口中只能写方法的声明,不能写方法的实现。所以b是正确的,题目叫选错误的,b不能选;
三楼和四楼都选d,d是正确的,题目叫选错的,所以d不能选;
c选项 我看也不对,因为在任何能够声明方法的地方声明方法时,都得加{},所以叫选错的,应选c
最后答案应该是a、c
------解决方案--------------------正确答案是d……
我汗……
a和b显然是正确的,因为接口中确实不允许出现方法的实现和变量的定义。
至于c和d,从C++、Java到C#,对于纯虚函数(抽象方法)都是不要{}的:
------解决方案--------------------TO:c选项 我看也不对,因为在任何能够声明方法的地方声明方法时,都得加{},所以叫选错的,应选c
这个本来就不需要加{}..
------解决方案--------------------ad
我这些天看enterpriselibrary2.0 编那些该死的接口
不用加{} 的
void MethodName(); 就可以
------解决方案--------------------说错误的描述:D
a)以上的代码中存在的错误包括:不能在接口中定义变量,所以int A代码行将出现错误;
对阿。
b)以上的代码中存在的错误包括:接口方法delFile是不允许实现的,所以不能编写具体的实现函数;
是啊。
c)代码void disFile();声明无错误,接口可以没有返回值;
没错。
d)代码void disFile();应该编写为void disFile(){};
错,void disFile();就可以了,写了{}就等于有了方法的主体,所以错。