在C#中,对于下列代码的出错原因,描述正确的是( )
class Program
{
static void Main(string[] args)
{
//创建Appliance对象时报错
Appliance apl = new Appliance();
Appliance mlp = new MobilePhone();
}
}
abstract class Appliance
{
public abstract void Charge();
}
class MobilePhone : Appliance
{
public void Call()
{
Console.WriteLine("手机可以打电话。");
}
public override void Charge()
{
Console.WriteLine("手机使用110V电压充电。");
}
}
AAppliance类在实例化的时候书写的位置不正确,导致报错。
BAppliance是一个抽象类,不允许直接实例化,只能够实例化非抽象的子类MobilePhone。
C定义Appliance类的时候在Charge方法中没有任何方法体,所以创建其对象没有任何意义,所以系统报出错误。
D代码关系没有理解错误,应该写为:MobilePhone pm = new Appliance()。
相关试题
-
在C#中,对于下列代码的出错原因,描述正确的是( ) class Program { static void Main(string[] args) {
-
在C#中,对于下列代码的出错原因,描述正确的是() abstract class Appliance { public abstract void Charge();
-
C#中下列代码运行结果是() public abstract class A { public A() { Console.Write
-
在C#中,下列代码需要输出”小狗喜欢吃骨头”,“小猫蹲着睡”,则需要在Main()方法中添加的代码是() class Program { static void Main(s
-
在C#中,关于以下C#代码的说法正确的是() public abstract class Animal { public abstract void Eat(); }