2009-10-09 67 views
1

众所周知,Java和J#中禁止使用“多重继承”。但是,您可以使用Java和J#实现多个接口,如Runnable。那么,如何编写自己的类来继承JFC和WFC类,并同时实现JFC和WFC接口?是那样的可能......?如何编写自己的Java类以从JFC和WFC类继承?

我知道如何分别继承JFC和WFC类并逐个实现接口。有人可以发布示例代码?我正在阅读约翰夏普的微软出版社的书,他说所有这些都是基本的......任何人都可以帮忙吗?

+2

标题与问题无关,如果它们相关,则会得到更好的回复。 – 2009-10-09 05:22:50

+1

你可能不应该在title ether中写下你的一半问题 – Bostone 2009-10-09 05:47:55

回答

4
class FooBooImpl implements Foo, Boo { 
    public void iAmFoo() { 
     // do Foo#iAmFoo 
    } 
    public void iAmBoo() { 
     // do Boo#iAmBoo 
    } 
} 

class FooBooImpl extends Foo implements Boo { 
    @Override 
    public void iAmFoo() { 
     super.iAmFoo(); 
     // do something 
    } 

    public void iAmBoo() { 
     // do Boo#iAmBoo 
    } 
} 

或者(如果你决定委托)

class SuperFooBoo { 
    private Foo foo; 
    private Boo boo; 

    public void iAmFoo() { 
     foo.iAmFoo(); 
    } 

    public void iAmBoo() { 
     boo,iAmBoo(); 
    } 
} 

现在你在这里主要的限制是,如果Foo和嘘声定义相同签名的方法。你必须小心地混合JFC和WFC(如果它们可以混合使用,我真的不知道),这两者都是钩入本机代码的工具包。

0

正如Droidln.net所说,您只需创建该类并说它实现了两个接口。然后你编写与界面中描述的方法相匹配的方法。

如果您使用eclipse(并且我假设其他大多数IDE),您可以自动创建所需的方法。