[英]Is it okay for two or more interfaces to have the same methods?
我正在用Java做一個簡單的游戲,我有這個疑問。
假設每個游戲角色都有一個界面
public interface Entity{
Vector2 getPosition();
/* More methods...*/
}
然后我想創建一個名為Automata的接口,由每個使用AI東西的類實現(這可能是Entity的一個特例,但我認為它因為可重用性而單獨考慮)
public interface Automata{
Vector2 getPosition(); // The AI stuff needs to know this
/* More methods needed for AI (some may also be the same as Entity)... */
}
我認為這促進了模塊化,因為每個接口都描述了它的方法,而不用擔心其他接口的存在,但是當我寫這篇文章時,我覺得我在重復自己,所以這兩個(或可能更多)接口使用相同的方法什么壞事?
如果兩個接口之間存在共同點,那么您可以定義父接口,然后Entity
和Automata
可以擴展它。
我在下面說明一下:
interface AI {
Vector2 getPosition();
}
interface Entity extends AI { }
interface Automata extends AI { }
這樣,作為AI一部分的任何其他接口都不需要顯式添加另一個方法,而只需擴展AI
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.