0
狀況:說有一個A類和接口B.強制接口實現
需要量:如果任何一類,說C,想要創建和使用的對象他們,那麼這個類也將不得不實現接口B.是否有任何方法來執行這個條件?
原因:現在可能會出現一個問題,爲什麼我想要做這樣的事情。原因在於,當C類創建A的對象並使用它們時,那些對象調用C的某些方法。我想在接口B中聲明這些方法,以便C總能實現這些方法。
狀況:說有一個A類和接口B.強制接口實現
需要量:如果任何一類,說C,想要創建和使用的對象他們,那麼這個類也將不得不實現接口B.是否有任何方法來執行這個條件?
原因:現在可能會出現一個問題,爲什麼我想要做這樣的事情。原因在於,當C類創建A的對象並使用它們時,那些對象調用C的某些方法。我想在接口B中聲明這些方法,以便C總能實現這些方法。
既然你說A
類的對象將拜會C
方法,他們將不得不繼續參考C
莫名其妙。請使用B
類型的此參考,然後完成。
也就是說
public class A {
public A(B arg) {
....
}
}
然後在C
:
A a = new A(this);
這將迫使C類來實現接口B
。
試試這個片斷:
public interface B {
// methods
}
public class A {
private final B b;
public A(B b) {
this.b = b;
}
...
}
public class C implements B{
// implement B's methods
public static void main(String[] arg) {
C c = new C();
A a = new A(c);
}
}
請詳細說明問題更具體。 'A','B'和'C'對於我們來說太抽象了,無法把握你想要做的事情。你最喜歡什麼類/接口?就目前而言,你的問題沒有多大意義。 – Asaph
我有一個名爲Agent的類和一個AgentInterface接口。現在,任何想要使用代理的類(這些類將由其他人編寫,而不是由我編寫)將不得不創建代理對象,對吧?但我想在這裏執行一個條件。如果需要使用類Agent,我還希望該類實現AgentInterface。是否可以強制執行這樣的條件?如果不是,我能以什麼方式實現這樣的事情? – aps
Mukherjee:我還是不明白你的設計。 'AgentInterface'包含哪些方法? – Asaph