@Overrride重写在接口的继承、实现关系中的多种表现形式

来源:互联网 发布:windows vnc客户端 编辑:程序博客网 时间:2024/05/18 03:31

偶然一次阅读netty源码,发现@Override出现在接口类中出现,本人入道不深,第一次见这种写法,还望大神莫见怪!不多说,先贴实例代码,过程和解释再抽时间来完善。

GrandParent.java

package test;public interface GrandParent {/** * echo different things by  anyone. * @return */int echo();/** * differ on subClass or implementation class. */void start();}

Parent.java

package test;public interface Parent extends GrandParent{@Overridedefault int echo() {System.out.println("parent...");return 0;}@Overridevoid start();}

Mama.java

package test;public class Mama implements Parent{@Overridepublic void start() {System.out.println("mama start ...");}}


Papa.java

package test;public class Papa implements Parent{@Overridepublic int echo() {System.out.println("papa..");return 0;}@Overridepublic void start() {System.out.println("papa start...");}public static void main(String[] args) throws Exception {Papa papa = Papa.class.newInstance();papa.echo();papa.start();Mama mama  = Mama.class.newInstance();mama.echo();mama.start();GrandPapa gp = GrandPapa.class.newInstance();gp.echo();gp.start();}}

GrandPapa.java

package test;public class GrandPapa implements GrandParent{@Overridepublic int echo() {System.out.println("Grandpapa...");return 0;}@Overridepublic void start() {System.out.println("Grandpapa start...");}}

程序输出结果:

papa..
papa start...
parent...
mama start ...
Grandpapa...
Grandpapa start...


之后再抽时间补充解释

阅读全文
0 0
原创粉丝点击