Topic: interface 问题 |
Print this page |
1.interface 问题 | Copy to clipboard |
Posted by: 浪迹天 Posted on: 2006-11-21 21:03 package interface2; interface CanFight{ void fight(); } interface CanSwim{ void swim(); } interface CanFly{ void fly(); } class ActionCharacter{ public void fight(){ } } class Hero extends ActionCharacter implements CanFight,CanSwim,CanFly { public void swim() { // TODO Auto-generated method stub } public void fly() { // TODO Auto-generated method stub } } public class Adventure { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub } } 为什么Hero 里面没有void fight();方法呢 |
2.Re:interface 问题 [Re: 浪迹天] | Copy to clipboard |
Posted by: baler Posted on: 2006-11-22 09:41 因为你父类里也有一个fight()方法 |
3.Re:interface 问题 [Re: 浪迹天] | Copy to clipboard |
Posted by: lisliefor Posted on: 2006-11-22 15:02 继承一个接口,你必须实现它里面的所有方法; 继承一个类,那么会将父类的所有非静态方法继承下来,如果你的新的需求,需要覆盖某个父类方法的时候,才在子类中,从新给出定义。 Hero类中其实有fight()方法,你可以直接使用它,而它的具体,在父类中已经实现。 |
Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1 客服电话 18559299278 客服信箱 714923@qq.com 客服QQ 714923 |