子类实现接口举例(实现类是接口的子类吗)

网友投稿 248 2023-01-08


本篇文章给大家谈谈子类实现接口举例,以及实现类是接口的子类吗对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 今天给各位分享子类实现接口举例的知识,其中也会对实现类是接口的子类吗进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

java接口和抽象类的区别举例

区别点:
1)定义:抽象类是用abstract关键字修饰,包含至少一个抽象方法的类;
接口是用interface修饰的抽象方法和全局常量的集合。
2)组成:抽象类由构造方法、抽象方法、普通方法、常量和变量组成;
接口由常量和抽象方法组成。
3)使用:子类继承抽象类(extends);
子类实现接口(implements)
4)关系:抽象类可以实现多个接口;
接口不能继承抽象类,但允许继承多个接口。
5)常见设计模式:抽象类的常见设计模式是模板设计;
接口的常见设计模式是工厂设计和代理设计。
6)对象:抽象类和借口都是通过对象的多态性昌盛实例化对象。
7)局限:抽象类只能单继承;
接口没有单继承的局限。
8)实际:抽象类被用作一个模板;
接口被作为一个标准或表示一种能力;
9)选择:如果抽象类和借口都可以使用,则优先使用接口,避免单继承的局限。
10)特殊:一个抽象类中可以包含多个接口,一个接口中可以包含多个抽象类。

子类中实现父类的接口

这个不叫“继承了接口的方法”,而是叫“实现了接口的方法”,子类才是继承了父类的方法。
既然父类已经实现了接口的方法,那么就算你什么都不做,子类也已经实现了接口的方法。当然你可以在子类里重写那些方法,只要父类里那些方法没有被设定为final的。

举例:接口的定义,实现,为什么要用接口,意义何在?

你要把接口也理解成一种类,比如有个基类叫baseClass,一个继承他的类叫subClass,那么subClass也算是baseClass类型的,可以有这样的写法baseClass bc=new subClass()
接口也是一样,如果一个类MyClass实现了借口一个接口interfaceClass,你事实上可以把MyClass叫做interfaceClass的子类,可以有这样的写法interfaceClass ic=new MyClass()
这就是所说的多态的一部分基础。可以举个实在点的例子,比如你想写一个方法叫EnumAll,参数是一个类的实例,作用是例举出该实例中的每个子元素并打印出元素的ToString(如窗体的子元素是窗体中的控件,数组的子元素就不用说了吧),你就遇到两个问题
首先EnumAll参数的类型是什么。参数应该可以是一个Form类型,因为窗口中有很多控件,使用EnumAll和一个Form的实例做参数可以打印出包含在该参数窗体中的每个控件的名字;但是一个数组Object[]类型应该也可以使用EnumAll方法,EnumAll可以列举Object[]中的每个元素并打印。你是要把方法写成void EnumAll(Form e)还是写成void EnumAll(Object[] e)?
然后就是EnumAll怎样实现才能得到不同类型的实例的子元素?如果是void EnumAll(Form e)的形式,要想得到子元素要用
foreach(Control c in e.Controls)
{
Console.WriteLine(c.ToString());
}
的写法,如果数组要用
for(int i=0;i<e.length;++i)
{
Console.WriteLine(e[i].ToString());
}
的实现方法。
Form和Object[]是两种完全不沾边的类型,那么EnumAll到底该怎么写?
这时就可以使用接口,可以定义一个接口
interface IEnumable
{
Object next();//返回下一个子元素的方法
}
然后使Form和Object[]类型都实现IEnumable接口(实现方法是不同的,如前面所说),然后这样写EnumAll方法:
void EnumAll(IEnumable e)//一开始就说了,实现接口的类都可以算是接口的子类
{Object o;
while((o=e.next)!=null)
{
Console.WriteLine(o.ToString());
}
}
于是解决了上面的问题。
不知道有没有说清楚,如果理解了上面举的例子算是初步了解接口了,接口的多继承和多态性还有很多内容。
另外,上面的东西只是举例子,虽然C#中确实有IEnumable接口,但其定义要复杂的多,我只是举个简化的自己编的例子^_^。C#的(应该说是FCL吧)很多类都实现了IEnumalbe接口,像集合类和数组等。

java中,一个子类实现了父类中没有的接口,如图,怎么通过army调用子类实现的接口

你想调用move,就只能
Tank tank = new Tank();
tank.move();
这样来调用了.
如果你想通过
Weapon weapon = new Tank();
weapon.move(); 这样是不可能的.
自己用人类的逻辑思考一下.不是所有的Weapon都可以move的.你想通过weapon来move对吗?

一个子类如何继承父类且实现接口

不知道你用的是什么语言来写。用JAVA一般来说,接口为interface,假如有接口类,Inter1中方法public void test();子类为C1,C1 implements Inter1,C1中就要去实现test()这个方法。

自己用生活中的例子说出JAVA中类、对象、父类、子类、继承、接口的概念

类:人类
对象:你、我
父类:生物(做个简单定义:有生命的,会死亡的。<不要求准确,只是举例)
子类:男人、女人
继承:子类继承父类,这里是人类具有 ‘生物’ 的所有特性:有生命,会死亡,另外还有自己的特性,说话,思考等。
接口:定义某一个标准,以后和它相关的都要遵循这个标准。比如:水管的接口,必须按照现有的接口类型需求去制造或者买另一半,要不然这里就无法使用 关于子类实现接口举例和实现类是接口的子类吗的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。 子类实现接口举例的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于实现类是接口的子类吗、子类实现接口举例的信息别忘了在本站进行查找喔。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:详解Java基础知识——JDBC
下一篇:Spring boot+beetl+i18n国际化处理的方法
相关文章

 发表评论

暂时没有评论,来抢沙发吧~