上海交大应用软件开发(C#)第二次作业求答案,今天要,急!在线等!后面还有很多题放不下,这是1
对于下面声明的委托和定义的类:delegateintMyDelegate(intx);classA{publicintf(inti){return0;}publicvoi...
对于下面声明的委托和定义的类:
delegate int MyDelegate( int x);
class A
{
public int f(int i)
{
return 0;}
public void g(int i)
{
}
public static int h(int k)
{
return 0;
}
}
下面语句中,哪些是正确的( )。
MyDelegate d1=new MyDelegate( A.h); //语句1
A a=new A( );
MyDelegate d2=new MyDelegate(a.f); //语句2
MyDelegate d3=new MyDelegate(a.g); //语句3
MyDelegate d4=new MyDelegate(a.h); //语句4
选择一项:
a. 语句2、语句3
b. 语句3、语句4
c. 语句1、语句2
d. 语句1、语句2、语句3、语句4
题目2关于多态,下列说法错误的是( )选择一项:
a. 多态可以分为编译时多态和运行时多态。前者的特点是在编译时就能确定要调用成员方法的哪个版本,后者则是在程序运行时才能确定要调用成员方法的哪个版本
b. 多态实际上就是重载,它们本质上是一样的
c. 编译时多态是在程序运行时才能确定要调用成员方法的哪个版本,而运行时多态在编译时就能确定要调用成员方法的哪个版本
d. 多态和重载是两个完全不同的概念,前者是通过定义虚方法和重写虚方法来实现,后者是通过对同一个函数名编写多个不同的实现代码来完成。
题目3关于静态成员,下列说法正确的是( )选择一项:
a. 在类实例化后,同类型的对象都共享类的静态成员,静态成员只有一个版本
b. 同一个类中的静态成员,类实例化后,在不同的对象中形成不同的静态成员
c. 在类实例化后静态成员也被实例化,因此不同的对象有不同的静态成员
d. 在类定义时静态成员属于类,在类实例化后静态成员属于对象
题目4假设有类C继承类B,类B继承类A,则下面说法正确的是( )选择一项:
a. C仅继承类A的所有成员,不继承类B的成员
b. 类C继承类A的部分成员,同时继承类B的所有成员
c. 类C不仅继承类B的所有成员,也继承类A的所有成员
d. 类C仅继承类B的所有成员,不继承类A的成员
题目5下面代码在类A中重载了减号“-”:
class A
{
private int x;
public static A operator- (A b, A c)
{
A a=new A( );
a.x=b.x-c.x;
return a;}
public void setx(int x) {this.x=x;}
public int getx( ) {return x;}}
执行下列语句:
A a=new A( ); a.setx(3);
A b=new A( ); b.setx(6);
A c=a-b;
int n=c.getx( );
结果n的值为( )选择一项:
a. -3
b. -6
c. 9
d. 18
题目6下面关于接口的说法,正确的是( )选择一项:
a. 接口中定义的方法可以编写其实现代码
b. 接口中定义的方法都必须是虚方法
c. 继承接口的类可提供被继承接口中部分成员的实现代码
d. 接口中的所有方法都必须在其派生类中得到实现
题目7
上面关于类的定义,错误的是( )
错 展开
delegate int MyDelegate( int x);
class A
{
public int f(int i)
{
return 0;}
public void g(int i)
{
}
public static int h(int k)
{
return 0;
}
}
下面语句中,哪些是正确的( )。
MyDelegate d1=new MyDelegate( A.h); //语句1
A a=new A( );
MyDelegate d2=new MyDelegate(a.f); //语句2
MyDelegate d3=new MyDelegate(a.g); //语句3
MyDelegate d4=new MyDelegate(a.h); //语句4
选择一项:
a. 语句2、语句3
b. 语句3、语句4
c. 语句1、语句2
d. 语句1、语句2、语句3、语句4
题目2关于多态,下列说法错误的是( )选择一项:
a. 多态可以分为编译时多态和运行时多态。前者的特点是在编译时就能确定要调用成员方法的哪个版本,后者则是在程序运行时才能确定要调用成员方法的哪个版本
b. 多态实际上就是重载,它们本质上是一样的
c. 编译时多态是在程序运行时才能确定要调用成员方法的哪个版本,而运行时多态在编译时就能确定要调用成员方法的哪个版本
d. 多态和重载是两个完全不同的概念,前者是通过定义虚方法和重写虚方法来实现,后者是通过对同一个函数名编写多个不同的实现代码来完成。
题目3关于静态成员,下列说法正确的是( )选择一项:
a. 在类实例化后,同类型的对象都共享类的静态成员,静态成员只有一个版本
b. 同一个类中的静态成员,类实例化后,在不同的对象中形成不同的静态成员
c. 在类实例化后静态成员也被实例化,因此不同的对象有不同的静态成员
d. 在类定义时静态成员属于类,在类实例化后静态成员属于对象
题目4假设有类C继承类B,类B继承类A,则下面说法正确的是( )选择一项:
a. C仅继承类A的所有成员,不继承类B的成员
b. 类C继承类A的部分成员,同时继承类B的所有成员
c. 类C不仅继承类B的所有成员,也继承类A的所有成员
d. 类C仅继承类B的所有成员,不继承类A的成员
题目5下面代码在类A中重载了减号“-”:
class A
{
private int x;
public static A operator- (A b, A c)
{
A a=new A( );
a.x=b.x-c.x;
return a;}
public void setx(int x) {this.x=x;}
public int getx( ) {return x;}}
执行下列语句:
A a=new A( ); a.setx(3);
A b=new A( ); b.setx(6);
A c=a-b;
int n=c.getx( );
结果n的值为( )选择一项:
a. -3
b. -6
c. 9
d. 18
题目6下面关于接口的说法,正确的是( )选择一项:
a. 接口中定义的方法可以编写其实现代码
b. 接口中定义的方法都必须是虚方法
c. 继承接口的类可提供被继承接口中部分成员的实现代码
d. 接口中的所有方法都必须在其派生类中得到实现
题目7
上面关于类的定义,错误的是( )
错 展开
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询