0
我有類似以下內容:多個抽象類的多層次繼承
public interface A
{
....
}
public abstract class AbstractClass implements A
{
// Implements some methods from interface
....
}
public abstract class GroupOne extends AbstractClass
{
// Implements some methods from interface
// Define couple of abstract methods
.....
}
public abstract class GroupTwo extends AbstractClass
{
// Implements some methods from interface
// Define couple of abstract methods
.....
}
public class ClassImpl extends GroupOne
{
// Implement couple of abstract methods from GroupOne
}
public class AnotherClassImpl extends GroupTwo
{
// Implement couple of abstract methods from GroupTwo
}
在我的情況下,interace和抽象類中提供的庫的一部分。使用這個庫的應用程序需要編寫擴展第二級抽象類的Impl類。 AbstractClass中的所有類都有一些常用功能,然後在組類中有一些特定於組的功能。
這是一個很好的設計嗎?我問這個問題的原因是我很少遇到涉及多個抽象類的類層次結構。
看起來不錯,雖然我們並不真正瞭解上下文。 該設計表示每個類都以接口定義的方式運行。 Group類共享一些方法(通過AbstactClass),但以不同的方式實現一些方法。每個組都有另一個類的列表,以非常特定的方式實現所需的方法。 你確定你想要很多抽象類嗎?如果他們有道理,那就很好。 – c00kiemon5ter
@ c00kiemon5ter:是的,沒錯。 – Prasanna