추상 슈퍼 클래스에 초기 필드 매개 변수 만 정의하는 생성자가 있고 하위 클래스 중 하나가 해당 초기화에 필드 매개 변수 중 하나를 사용하지 않으면 "null"을 넣을 수 있습니까? field 인수는 super() 호출에 들어 갑니까? 이 만족할슈퍼 매개 변수에 null 사용
public abstract class SuperClass {
protected int xPos;
protected int yPos;
protected int zPos;
public SuperClass(int xPos, int yPos, int zPos) {
this.xPos = xPos;
this.yPos = yPos;
this.zPos = zPos;
}
... getters & setters, etc.
}
public class SubClass extends SuperClass {
public SubClass(int xPos, int yPos) {
super(xPos, yPos, null);
}
}
:
더 명확하게 설명하기 위해, 예를 들어 여기있어? 이 좋은 코딩 실천인가요? 아니면 여러 유형의 인수를 받아들이도록 여러 생성자를 갖는 것이 더 나은가?
코딩 연습에 대해 이야기하기 전에 컴파일 오류가 발생합니다. 그냥 *** 현명한 *** 기본값으로 설정하십시오. – nhahtdh
int를 'null'로 설정할 수 없습니다 ... –
컴파일러가 적합하면 컴파일 할 수 없습니다. – elyashiv