이 오류를 수정하는 데 문제가 있습니다. 누군가 제발 도와 줄 수 있니? 내 프롬프트와 코드는 아래에 게시됩니다. Java 클래스/상속을 사용하는 중에 오류가 발생했습니다.
는 사각형을 캡슐화 슈퍼 클래스를 작성한다. 사각형에는 사각형의 너비와 높이를 나타내는 두 개의 특성이 있습니다. 그것은 사각형의 영역과 영역을 반환하는 메소드를 가지고 있습니다. 이 클래스에는 평행 육면체 또는 상자를 캡슐화하는 하위 클래스가 있습니다. 평행 육면체는 사각형을 기본으로하고 또 다른 특성 인 길이를가집니다. 그것의 면적과 부피를 계산하고 반환하는 두 가지 방법이 있습니다. 또한이 두 클래스를 테스트하기 위해 클라이언트 클래스를 포함해야합니다.암시 슈퍼 생성자
Rectangle1()
미정이다public class Rectangle1 { protected double width; protected double height; public Rectangle1(double width, double height){ this.width = width; this.height = height; } public double getWidth(){ return width; } public void setWidth(double width) { this.width = width; } public double getHeight(){ return height; } public void setHeight(double height){ this.height = height; } public double getArea(){ return width * height; } public double getPerimeter(){ return 2 * (width + height); } } public class Box extends Rectangle1 { protected double length; public Box(double length){ this.length = length; } public double getLength(){ return length; } public void setLength(double length){ this.length = length; } public double getVolume(){ return width * height * length; } } public class TestRectangle { public static void main(String[] args) { Rectangle1 rectangle = new Rectangle1(2,4); Box box = new Box(5); System.out.println("\nA rectangle " + rectangle.toString()); System.out.println("The area is " + rectangle.getArea()); System.out.println("The perimeter is " +rectangle.getPerimeter()); System.out.println("The volume is " + box.getVolume()); } }
오류가
public Box(double length){ this.length = length; }
이클립스 IDE에서 오류 메시지가 아래와 같이이다. 다른 생성자를 명시 적으로 호출해야합니다.
그리고 나는 그것을 실행하려고하면, 그것은 나에게 제공합니다 스레드에서
예외는 "주요"
java.lang.Error
: 해결되지 않은 컴파일 문제 : 암시 슈퍼 생성자Rectangle1()
는 정의되지 않습니다. 명시 적으로
at Box.<init>(Box.java:4)
at TestRectangle.main(TestRectangle.java:7)
누군가가이 오류를 해결하는 방법에 저를 알려 주시기 바랍니다 수있는 또 다른 생성자를 호출해야합니까? 당신이 생성자, 더 aruments 생성자가 존재하지 않습니다 기본 을 썼다 때문에
public Rectangle1(double width, double height) {
this.width = width;
this.height = height;
}
, 그래서 super()
오른쪽 생성자를 찾을 수 없습니다 :
도움 주셔서 감사합니다. 이 문제를 어떻게 해결할 수 있습니까? – StackP
@StackP 내 대답보기, 그것은 당신의 코드를 수정해야합니다. – Maroun