解决方法最重要的是,主要优点是代码的模块化.当您从“子”类直接调用“父”类时,创建一个cyclicdependency.这实际上意味着您无法替换一个,而不会更改另一个.这种方法经常导致意大利面条代码难以维护,甚至更难扩展,并且如果没有大的重构努力几乎不可能替换.至于你的例子:如果你直接从Fragment调用你的Activity的公共方法,你将无法在没有实现hacky解决方案的情况下在其他活动中重用你的Fragment(比如if(getActivity()instanceofA){...}else{…