2009-10-09 26 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),您可以自動創建所需的方法。