Junit 테스트 작업 중 문제가 발생했습니다.수퍼 클래스에 java 서브 클래스 값 전달
나는 차량 수퍼 클래스와 오토바이 및 자동차 하위 클래스가 있습니다. 내가 작업하고있는 서브 클래스, 서브 클래스의 정보 (문자열 ID, INT 도착를)
public class MotorCycle extends Vehicle {
public String bikeID;
public int arrivalTimeA;
public MotorCycle(String vehID, int arrivalTime) throws VehicleException {
super(bikeID, arrivalTimeA);
bikeID = vehID;
arrivalTimeA = arrivalTime;
검색하는 슈퍼 클래스의 메소드를 사용합니다, 나는 슈퍼 클래스 차량의 방법을 사용하려면 오토바이
서브 클래스에서 슈퍼 (vehID, arrivalTime)를 사용하여 시도public Vehicle(String vehID,int arrivalTime) throws VehicleException {
vehicleID = vehID;
arrivalTimeA = arrivalTime;
if (arrivalTime <=0){
throw new VehicleException("Vehicle");
}
public String getVehID() {
return vehicleID;
}
에서 정보를 검색,하지만 난이 프로그램에 대한 좋은없는 변수가 정적 확인해야합니다.
super (vehID, arrivalTime)를 추가 할 때마다 "변수를 정적으로 만드십시오"라는 오류가 계속 발생합니다. 그렇지 않으면 제대로 실행되지 않고 실패합니다. 내 시험이 무엇
은 다음과 같습니다
@Test
public void testGetVehID() throws VehicleException {
moto = new MotorCycle("b1234", 600);
veh = moto;
String id = veh.getVehID();
assertEquals("b1234", id);// TODO
}
VEH 그냥 빈 Vehicle 클래스 객체입니다.
정보에 액세스하는 데 문제가 있습니다. 매번이 테스트 또는 유사한 테스트를 실행할 때마다 값이 int 인 경우 0, 문자열이 null 인 경우
super (vehID, arrivalTime)에 대해 변수를 정적으로 설정해야하는 이유는 무엇입니까? – Hirak
귀하의 질문은 [this] (http://stackoverflow.com/q/14076730/2764279)와 관련이 있습니다 –
코드는 문제가되지 않습니다. –