asp.net 虚方法、抽象方法、接口疑问
程序员文章站
2024-03-11 14:55:25
一、抽象类中可以提供非抽象的执行方法吗?接口呢? 答:抽象类可以这么写: 复制代码 代码如下:public abstract class a { public string...
一、抽象类中可以提供非抽象的执行方法吗?接口呢?
答:抽象类可以这么写:
public abstract class a
{
public string getweburl()
{
return "jb51.net";
}
public abstract string getwebname();
}
public class b : a
{
public override string getwebname()
{
return "";
}
}
运行: b b = new b();
response.write(b.getweburl());
编译通过没有错误,而接口本身只能包含成员但不包括具体实现,且抽象函数只能存在于抽象类中,所以接口中只有方法的签名,但没有具体的实现,且不是抽象函数,例如: c#复制代码
interface ia
{
string getweburl();
string getwebname();
}
二、接口中的成员是否必须被其子类实现?
答:接口是抽象类的一个特例,而抽象函数都必须被其子类覆盖实现,接口中的成员也一样必须被其子类实现。
三、抽象类中是否可以使用virtual关键字?
答:不可以,抽象类中只能包含抽象方法和抽象访问器。
四、抽象类能被实例化吗?
答:不可以。
答:抽象类可以这么写:
复制代码 代码如下:
public abstract class a
{
public string getweburl()
{
return "jb51.net";
}
public abstract string getwebname();
}
public class b : a
{
public override string getwebname()
{
return "";
}
}
运行: b b = new b();
response.write(b.getweburl());
编译通过没有错误,而接口本身只能包含成员但不包括具体实现,且抽象函数只能存在于抽象类中,所以接口中只有方法的签名,但没有具体的实现,且不是抽象函数,例如: c#复制代码
interface ia
{
string getweburl();
string getwebname();
}
二、接口中的成员是否必须被其子类实现?
答:接口是抽象类的一个特例,而抽象函数都必须被其子类覆盖实现,接口中的成员也一样必须被其子类实现。
三、抽象类中是否可以使用virtual关键字?
答:不可以,抽象类中只能包含抽象方法和抽象访问器。
四、抽象类能被实例化吗?
答:不可以。
推荐阅读
-
asp.net 虚方法、抽象方法、接口疑问
-
asp.net 虚方法、抽象方法、接口疑问
-
PHP入门教程之面向对象的特性分析(继承,多态,接口,抽象类,抽象方法等)
-
Java多态七:接口中抽象方法的tips;接口中的常量;接口应用中的常见问题;
-
Java中一个类怎么实现两个接口中相同名字的抽象方法
-
java接口中抽象方法的定义与使用
-
定义两个接口,其中各包括一个抽象方法分别用来完成两个数的加法和减法操作,然后创建一个类KY6_3来实现这两个接口中的抽象方法。编写程序KY6_3.java,将源程序写在实验报告中。
-
PHP学习记录之面向对象(Object-oriented programming,OOP)基础【接口、抽象类、静态方法等】
-
PHP入门教程之面向对象的特性分析(继承,多态,接口,抽象类,抽象方法等)
-
抽象方法、抽象类、接口、接口和抽象类的区别