我正在制作一个需要大量编码的应用,所以我想让它井井有条。这是在过去通过扩展多个类直到最后添加ActionBarActivity来完成的,但这可能会变得复杂。我听说过接口并希望尝试一下。如何在我的界面中创建一个方法,我可以从代码中的任何地方调用。当我创建一个接口并扩展ActionBarActivity时,它给出了一个错误,说“预期接口在这里”。
public interface buttonClick extends ActionBarActivity {
// i want to be able to do the to do code here for the app
}
public class scoutingFragment extends Fragment {
public static scoutingFragment newInstance()
{
scoutingFragment fragment = new scoutingFragment();
return fragment;
}
public scoutingFragment()
{
}
public View onCreateView(LayoutInflater inflater, ViewGroup container , Bundle savedInstanceState)
{
View rootView = inflater.inflate(R.layout.scouting,container,false);
return rootView;
}
public void onAttach(Activity activity){
super.onAttach(activity);
((MainActivity)activity).onSectionAttached(0);
}
答案 0 :(得分:0)
接口可以扩展另一个接口。它不能扩展抽象或具体类。
public interface MySuperInterface {
}
public interface MyInterface extends MySuperInterface {
}
但在这种情况下使用接口不会使代码更容易维护。尝试重新分类你的职责,分离他们的职责,总是喜欢组合而不是继承。
答案 1 :(得分:0)
Java接口不扩展类,它们只扩展了有意义的接口,因为类具有实现,而接口只有声明。
在你的场景中,如果扩展ActionBarActivity,你必须实现其抽象函数,显然你不能在接口中给出实现。为什么它不允许你扩展类