asp.net 虚方法、抽象方法、接口疑问


一、抽象类中可以提供非抽象的执行方法吗?接口呢?
答:抽象类可以这么写:
复制代码 代码如下:

public abstract class A
{
public string getWebUrl()
{
return "phpstudy.net";
}
public abstract string getWebName();
}
public class B : A
{
public override string getWebName()
{
return "phpStudy";
}
}

运行: B b = new B();
Response.Write(b.getWebUrl());
编译通过没有错误,而接口本身只能包含成员但不包括具体实现,且抽象函数只能存在于抽象类中,所以接口中只有方法的签名,但没有具体的实现,且不是抽象函数,例如: C#复制代码
interface IA
{
string getWebUrl();
string getWebName();
}
二、接口中的成员是否必须被其子类实现?
答:接口是抽象类的一个特例,而抽象函数都必须被其子类覆盖实现,接口中的成员也一样必须被其子类实现。
三、抽象类中是否可以使用virtual关键字?
答:不可以,抽象类中只能包含抽象方法和抽象访问器。
四、抽象类能被实例化吗?
答:不可以。
« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3