코드에 문제가 있습니다. 그래서 저는 GeoFig 객체와 GeoFig를 확장하는 Circle을 가지고 있습니다. GeoFig에는 면적, 반지름 및 둘레와 같은 비공개 필드가 포함됩니다. GeoFig에는 이러한 필드를 설정하고 가져 오는 메소드도 있습니다. Circle 객체를 만들고 get 메서드를 인스턴스화하려고 시도했지만 작동하지 않습니다. 어떤 충고? 다음은 내 코드입니다.다형성 - Java에서 메소드 인쇄시 문제가 발생했습니다.
abstract public class GeoFig {
private double radius;
private double area;
private double circumference;
public void setRadius(double radius){
this.radius = radius;
}
public double getRadius(){
return this.radius;
}
public void setCircArea(double radius){
this.area = Math.pow(radius, 2) * Math.PI;
}
public double getCircArea(){
return this.area;
}
public void setCircumference(double radius){
circumference = 2*this.radius * Math.PI;
}
public double getCircumference(){
return this.circumference;
}
abstract String getMetrics();
public static void main(String[] args){
Circle circ = new Circle(2);
circ.getRadius();
}
}
public class Circle extends GeoFig {
public Circle(double radius) {
setRadius(radius);
setCircArea(radius);
setCircumference(radius);
}
@Override
public String getMetrics() {
return "Object of class Circle " +
"\nRadius:" + getRadius() +
"\nArea: " + getCircArea() +
"\nCircumference: " + getCircumference();
}
}
으로 작동하지 않습니다. 프로그램을 실행하려고하면 아무 것도 표시되지 않습니다. – noobforce
'System.out.println' 문이 없습니다. – rgettman
잠깐, 내가 할 때 cir.getRadius(); 그게 System.out.println() 안에 있을까요? – noobforce