Итак, у меня есть суперкласс с двумя параметрами в конструкторе. Конструктор суперкласса определяет одного члена, используя одну переменную, но вторая переменная используется для проверки, являются ли они нулевыми. Поэтому в конструкторе подкласса я вызываю super, а затем определяю член другой переменной. При отладке он пропускает сразу по объявлению, используя вторую переменную после вызова super. Я дам некоторый неспецифический c код.
public abstract class Foo{
private enum type; #the enum is defined its not just enum written
public Foo(enum type, String str){
Objects.requireNonNull(type, "Given type must not be null.");
Objects.requireNonNull(str, "Given string input must not be null.");
this.type = type;
}
...
methods
...
}
Теперь для подкласса
public class Bar extends Foo{
private String str;
...members...
public Bar(enum type, String str){
super(type, str);
this.str = str;
}
}
Итак, при отладке, строка this.str = str; полностью пропущен Почему это происходит?