接口的继承

接口具有不变性,但这并不意味着接口不再发展。类似于类的继承性,接口也可以继承和发展。

注意:接口继承和类继承不同。首先,类继承不仅是说明继承,而且也是实现继承;而接口继承只是说明继承。也就是说,派生类可以继承基类的方法实现,而派生的接口只继承了父接口的成员方法说明,而没有继承父接口的实现。其次,C#中类继承只允许单继承,但是接口继承允许多继承,一个子接口可以有多个父接口。

接口可以从零或多个接口中继承。从多个接口中继承时,用“:”后跟被继承的接口名字,多个接口名之间用“,”分割。被继承的接口应该是可以访问得到的,比如从private类型或internal类型的接口中继承就是不允许的。接口不允许直接或间接地从自身继承。

和类的继承相似,接口的继承也形成接口之间的层次结构。

请看下面的例子。

程序清单15-1:

using System;

interface IControl
{
 void Paint();
}
interface ITextBox:IControl
{
void SetText(string text);
}
interface IListBox:IControl
{
void SetItems(string[] items);
}
interface IComboBox:ITextBox,IListBox{}

对一个接口的继承也就继承了接口的所有成员,上面的例子中,接口ITextBox和IListBox都从接口IControl中继承,也就继承了接口IControl的Paint方法。接口IComboBox从接口ITextBox和IListBox中继承,因此它应该继承了接口ITextBox的SetText方法和IListBox的SetItems方法,还有IControl的Paint方法。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索继承
, 接口
, kfcapi接口
, 方法
, interface
, paint
, 68013的 #接口
, 多个
, 接口javawebjavawebserviceapp
, 继承textviewclassandroidjava
, 继承ocdelegate
, pb9继承方法
, springtomcat继承
接口.netwcfc#
java接口的继承、c#接口的继承、接口继承接口的意义、接口和继承的区别、java继承和接口的区别,以便于您获取更多的相关知识。

时间: 2024-09-12 20:33:31

接口的继承的相关文章

澄清Java语言接口与继承的本质

继承 计算机学院研二的兄弟与我讨论Java,一见面,几个问题全是关于接口,接口有什么用?为什么要用接口?什么时候该使用接口?很庆幸他们不是问我Java如何连接SQL Server,或者是如何开发J2EE应用,这类问题有杀伤力,避之则吉.今年计算机学院本科有个毕业设计课题是做J2ME,选这个题目的学生在5月末都还在苦着脸研究java.util.*这个包,这个这个--唉. 大多数人认为,接口的意义在于顶替多重继承.众所周知Java没有c++那样多重继承的机制,但是却能够实作多个接口.其实这样做是很牵

Java的接口和继承

1.JAVA里没有多继承,一个类只能有一个父类.而继承的表现就是多态.一个父类可以有多个子类,而在 子类里可以重写父类的方法(例如方法print()),这样每个子类里重写的代码不一样,自然表现形式就不一 样.这样用父类的变量去引用不同的子类,在调用这个相同的方法print()的时候得到的结果和表现形式就不 一样了,这就是多态,相同的消息(也就是调用相同的方法)会有不同的结果.举例说明: //父类 public class Father { //父类有一个打孩子方法 public void hit

Java接口与继承的本质

计算机学院研二的兄弟与我讨论Java,一见面,几个问题全是关于接口,接口有什么用?为什么要用接口?什么时候该使用接口?很庆幸他们不是问我Java如何连接SQL Server,或者是如何开发J2EE应用,这类问题有杀伤力,避之则吉.今年计算机学院本科有个毕业设计课题是做J2ME,选这个题目的学生在5月末都还在苦着脸研究java.util.*这个包,这个这个--唉. 大多数人认为,接口的意义在于顶替多重继承.众所周知Java没有c++那样多重继承的机制,但是却能够实作多个接口.其实这样做是很牵强的,

Java语言接口与继承的本质

  计算机学院研二的兄弟与我讨论Java,一见面,几个问题全是关于接口,接口有什么用?为什么要用接口?什么时候该使用接口?很庆幸他们不是问我Java如何连接SQL Server,或者是如何开发J2EE应用,这类问题有杀伤力,避之则吉.今年计算机学院本科有个毕业设计课题是做J2ME,选这个题目的学生在5月末都还在苦着脸研究java.util.*这个包,这个这个--唉. 大多数人认为,接口的意义在于顶替多重继承.众所周知Java没有c++那样多重继承的机制,但是却能够实作多个接口.其实这样做是很牵强

eclipse 为何没有自动提示对象(实现接口同时继承抽象类)的所有方法?

问题描述 eclipse 为何没有自动提示对象(实现接口同时继承抽象类)的所有方法? PS: 其他普通对象(例如 String 对象)有提示对象的所有方法. public interface BaseDao { ... } public abstract class BaseDaoImpl implements BaseDao {... } public interface BookDao extends BaseDao {... } public class BookDaoImpl exten

java-Java中接口多继承的意义

问题描述 Java中接口多继承的意义 初学Java,很多人都说Java中没有多继承,但是有多实现,我也明白其中的意思, 但是学习过程中发现Java中其实存在多继承的,它存在于接口与接口之间,不知道这种多继承的存在意义是什么? import static java.lang.System.*; public class ExtendsTest implements A { public static void main(String[] args) { ExtendsTest et = new E

在java中接口可以继承接口吗?

问题描述 在java中接口可以继承接口吗? 答案是可以,但是接口继承接口的意义何在? 我觉得接口最大的作用就是规范程序的结构,如果接口继承一个接口,这是要干嘛啊? 解决方案 不仅可以继承,还可以多继承.可以用来扩展功能啊,这样不用修改父借口,方便维护.体会过具体应用场景就明白了. 解决方案二: 接口可以多继承,,但类只能单继承,,多实现 解决方案三: 这得根据你的业务场景来说.接口的继承就像类的继承一样.继承父类或者父接口的方法或者参数.

isempty-C# 接口的继承 私有成员

问题描述 C# 接口的继承 私有成员 public interface IIdGenerator { object GenerateId(object container, object document); bool IsEmpty(object id); } 下面这个继承上面的接口,接口中私有成员无法实现,总是报错,路过的给下帮助呗 public class rsIdGenerator:IIdGenerator { } 解决方案 接口没有私有属性,如果要在接口中发布属性,要这样 public

C#中的接口和继承多态

上一节中我们学习到了构造函数,用来初始化一个对象的实例.同时在.NET Framework中,提供了析构函数用于清理对象.一般情况下不需要特别析构函数,系统会自动提供默认的析构函数来执行操作,清理不再需要的对象. 一. 静态和实例类成员 属性,方法和字段等成员是对象实例所特有的,此外还有静态成员.例如静态方法,属性和字段.这些静态的成员可以在类的不同实例之间共享.所以将他们可以看成是类的全局对象.静态属性和字段可以访问独立于任何对象实例的数据.在使用静态成员时候,不需要实例化对象. 前面在应用控