什么时候必须在子类中定义构造函数?

when is it obligatory to define constructors in subclasses?

试图继承数组适配器class当我没有在子class中定义构造函数时它给我一个错误...为什么我应该定义一个构造函数

public class WordAdapter extends ArrayAdapter<word> {
    public WordAdapter(Activity context, ArrayList<word> word) {

        super(context,0, word);
    }

问题:...我为什么要定义构造函数?

答:由于ArrayAdapterclass没有默认构造函数,我们需要定义一个构造函数来匹配superclass.

中的六个构造函数之一

您可以在此处阅读更多相关信息:

https://medium.com/@Sudhagar/android-array-adapters-what-most-of-the-tutorials-don-t-tell-you-90f898fb54a2

并非每个构造函数都被子对象继承class。 ArrayAdapter 没有默认构造函数,这就是您需要定义一个应该被调用的构造函数的原因。

有很多文章描述了子classes 中构造函数的确切行为。

什么时候必须在子classes 中定义构造函数?

答案:在这种情况下,如果 superclass 中没有默认构造函数。