我需要在Android中创建一个可用作BaseActivity的活动。
我只是有一个问题我对此有些怀疑。这会有用吗?这是一个好模式吗?
class SuperClass {
public void A() {
...
B();
}
public void B(){
//Does this get fired from the SubClass's method A()?
}
}
class SubClass extends SuperClass {
@Override
public void A(){
super.A();
}
@Override
public void B(){
...
//Or does this?
}
}
我的问题是,当我在super.A()
中致电Subclass
时,方法B()
是否会从SubClass
或SuperClass
被解雇?
答案 0 :(得分:2)
B
的{p> SubClass
(假设在A
的实例上执行SubClass
)。这正是方法覆盖的工作方式。顺便说一句,如果它只是调用A
方法,则无需覆盖SubClass
中的SuperClass
。
答案 1 :(得分:0)
“方法B()会从SubClass或SuperClass中被触发吗?” - 我不完全理解你的问题。
基本上,SubClass中的A()将在超类中调用A()。超类将调用SubClass的B()。