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