我有这样的事情:
public interface MyInt {
public void doStuff();
}
public extends SomeClass {
// Some methodes
}
然后我想扩展我的类SomeClass。现在其中一些子类可以实现MyInt,因此我想做类似的事情:
List<SomeClass> list = new ArrayList<>();
// Then we put stuff in list
for (SomeClass s : list)
if (s instanceof MyInt)
s.doStuff();
但它不起作用。如果接口是由当前类实现的,那么如何使用接口提供的方法?
度过愉快的一天。
答案 0 :(得分:1)
为了调用它的方法,你错过了对该接口的强制转换:
for (SomeClass s : list)
if (s instanceof MyInt)
((MyInt) s).doStuff();