私はJavaを初めて使用するので、ここで何かを見落としている可能性があります.他のスレッドを見回しましたが、私の質問によく似たものは見つかりませんでした. 私はプライベート変数が子クラスに継承されていないことを知っています。私が抱えている質問は、なぜ super(); 子コンストラクターで、基本コンストラクターのフィールドを認識しますか? 親クラスのコンストラクタはパブリックですか?渡す変数はプライベートですが、子コンストラクターはそれらを認識し、関係なく渡しますか? 説明をいただければ幸いです。
親クラス:
public abstract class BaseQuestion {
private String questions;
private float totalAttempts;
private float averageTime;
private float percentCorrect;
public BaseQuestion(String questions, float totalAttempts, float averageTime, float percentCorrect){
this.questions = questions;
this.totalAttempts = totalAttempts;
this.averageTime = averageTime;
this.percentCorrect = percentCorrect;
}
子クラス:
public class TrueFalseQuestion extends BaseQuestion{
public static int questionsCreated;
public TrueFalseQuestion(String question, float totalAttempts, float averageTime, float percentCorrect){
super(question, totalAttempts, averageTime, percentCorrect);
}
コンパイラは上記でエラーを出さないので、少し混乱します...
ありがとうございました、