作业帮 > 综合 > 作业

8、分析下列程序中类MyClass的定义

来源:学生作业帮 编辑:搜搜做题作业网作业帮 分类:综合作业 时间:2024/05/01 15:03:14
8、分析下列程序中类MyClass的定义
class BaseClass
{
public int i;
}
class MyClass:BaseClass
{
public new int i;
}
则下列语句在Console上的输出为( )
MyClass y = new MyClass();
BaseClass x = y;
x.i = 100;
Console.WriteLine(“{0},{1}”,x.i,y.i);
(提示:注意类MyClass 中的new关键字)
A.0,0 B.100,100 C.0,100 D.100,0
9、分析下列程序:
public class Demo
{
private string _sData = ““;
public string sData{set{_sData = value;}}
}
在Main函数中,创建该类的对象obj后,下列哪些语句是合法的( )
A.obj.sData = “It is funny!”;
B.Console.WriteLine(obj.sData) ;
C.obj.sData = 100;
D.obj.set(obj.sData);
10、在定义类时,如果希望类的某个方法能够在派生类中进一步进行改进,以处理不同的派生类的需要,则应将该方法声明成( )
A.sealed方法 B.public 方法 C.virtual 方法 D.override 方法
11、下?(列语句创建了多少个string对象 )
string [,] strArray = new string[3,4];
A.0 B.3 C.4 D.12
12、在C#中,下列哪些语句可以创建一个具有3个初始值为””的元素的字符串数组( )
A.string StrList[3]( ””);
B.string[3] StrList = {””,””,””};
C.string[] StrList = {””,””,””};
D.string[] StrList = new string [3];
13、在C#中设计类时,如何将一个可读可写的公有属性Name修改为只读属性( )
A.将Name的set语句块删除
B.将Name的set语句块置空
C.将Name的set语句块前加修饰符private
D.将Name添加readonly修饰符
14、下列函数定义中,哪条语句是非法的( )
void Test()
{
int I = 100; //第一句
object s = I; //第二句
int k = s; //第三句
k = (int)s; //第四句
}
A.第一句 B.第二句 C.第三句 D.第四句
8、分析下列程序中类MyClass的定义
8.D 有new修饰符,基类和派生类的i是不同的,修改基类不影响派生类,派生类默认值为0
9.A 只有set所以只能写不能读
10.C 定义
11.A 只创建了数组,没有创建具体的对象
12.C 语法题
13.A 语法题
14.C object是不能直接转int的,需要强制转换