我希望有很多很多的爱,如果没有很多的爱,我希望有很多很多的钱;没有很多的钱,我希望拥有健康!
I am like the road in the night listening to the footfalls of its memories in silence.
java: 子类同时继承类和接口
上一篇 /
下一篇 2016-02-17 10:08:41
/ 个人分类:Java
从下面的例子的中,在应用中,是定义子类对象的,看不出子类所继承的
接口好处,即使不写接口也是OK的。
确实难以想象接口的好处,能想象出的就是很多的Libary接口都是开放interface,给出相关接口的参数情况,看不到具体的逻辑,是不是在封装的时候,有机制可以把其对应的类真正实现的逻辑隐藏起来,如果是这样子,interface有这个好处吧
package edu.javase.buffer;
interfacefaces {
publicvoidfacefun1();
publicintfacefun2();
publicString facefun3();
}
interfacefaces2 {
publicvoidfacefun11();
publicintfacefun22();
publicString facefun33();
}
classfatherz {
publicfatherz() {
System.out.println("fatherz 构造器");
}
publicfatherz(inti) {
System.out.println("fatherz int i 构造器"+i);
}
publicvoidfatherfun() {
System.out.println("fatherfun");
}
}
classdemoface extends fatherz implements faces, faces2 {//一旦集成必须实现所有接口
publicdemoface() {
super();
System.out.println("demoface 构造器");
}
publicdemoface(inti) {
super(1);
System.out.println("demoface int i 构造器"+i);
}
@Override
publicvoidfacefun1() {
System.out.println("实现接口 facefun1");
}
@Override
publicintfacefun2() {
System.out.println("实现接口 facefun2");
return0;
}
@Override
publicString facefun3() {
System.out.println("实现接口 facefun3");
returnnull;
}
@Override
publicvoidfacefun11() {
System.out.println("实现接口 facefun11");
}
@Override
publicintfacefun22() {
System.out.println("实现接口 facefun22");
return0;
}
@Override
publicString facefun33() {
System.out.println("实现接口 facefun33");
returnnull;
}
}
publicclassdemointerface {
publicstaticvoidmain(String[] args) {
demoface dd=newdemoface();//定义的对象是子类的
dd.facefun1();//调用接口,并且实现
dd.facefun2();
dd.facefun3();
dd.facefun11();
dd.facefun22();
dd.facefun33();
System.out.println("----------------");
demoface ff=newdemoface(5);
ff.fatherfun();//同事继承父类
}
}
收藏
举报
TAG:
java
Java
接口