我正在设计一个出现以下扫描的系统。我有一个方法 f1() ,其行为因实现而异。我有一个方法 f2() ,所有实现的行为都是相同的。
我设计如下:
interface I1
{
//Behaviour will vary across implementations
void f1();
//Same behaviour for all implementations
void f2();
}
abstract class C
{
//Implemented in the Base class
void f2()
{
}
}
public class C1:C,I1
{
//Implemented interface method
public f1()
{
}
}
public class C2:C,I1
{
//Implemented interface method
public f1()
{
}
}
设计是否正确?任何人都可以在这个场景中提出任何合适的设计吗?