我有一个派生类的抽象类:
abstract class FoxObject : ICloneable
{
public int lineNumber;
public string line, name;
public FoxObject parent;
public List<FoxObject> children;
private Guid guid;
protected FoxObject(int lineNumber, string line, string name, FoxObject parent, List<FoxObject> children)
{
this.lineNumber = lineNumber;
this.line = line;
this.name = name;
this.parent = parent;
this.children = children;
guid = Guid.NewGuid();
}
//Code not relevant to this question.
}
我从中有几个派生类(所有派生类都直接从FoxObject
继承:Symbol
,Graphic
,Alias
,Action
和Update
每个Graphic
包含List<Symbol>
每个符号列表,其中包含别名,操作和更新(或三个单独的列表,这是问题的一部分)。然而,目前这些都是由父类中的List<FoxObject>
处理的,因此存在高水平的多态性。
我的问题是,是否有一种方法可以在派生类中指出List<FoxObject>
实际包含的内容,以节省每次必须抛出的内容?
如果没有,那么让这些List<T>
具有相同名称但不同type
并将其从FoxObject
类中移除是否有意义?
答案 0 :(得分:1)
我的回答是只使用public class MyRetryInterceptor implements MethodInterceptor {
@Override
public Object invoke(MethodInvocation invocation) throws Throwable {
Method m = invocation.getMethod();
Object result = invocation.proceed();
return result;
}
}
关键字,只需覆盖基类的成员字段:
new