나는 셰이프라는 이름의 수퍼 클래스를 가지고 있는데, 내 셰이프 클래스는 2DShape라는 하위 클래스가 있고 2DShape에는 circle, square라는 하위 클래스가 있습니다.하위 클래스의 메서드 호출
나는
Shape [] shapes = new Shape[4];
shapes[0] = new Circle(22, 88 , 4, 0);
shapes[1] = new Square(71, 96 , 0, 10);
내 문제는 내가 단지 내 Shape 클래스에서 메소드를 호출 할 수 있다는 것입니다 모양 이러한 객체 참조를 개최 형 모양의 배열을 만들었습니다. 내 Square 클래스와 Circle 클래스에서 메서드를 호출하려면 어떻게해야합니까? 이 두 호출 된 호출 할 싶습니다 calcArea라는 메서드가 있습니다. 나는 당신이 Shape
의 방법으로 calcArea()
를 정의해야이
for (int i = 0; i < shapes.length; i++) {
System.out.println(shapes[i]);
shapes[i].calcArea();
}
다운 캐스팅을 사용할 수 있습니다. –
감사합니다 얘들 아, 내가 캐스팅해야 할 것 같아 – Carl