Хорошо, таким образом у меня есть три классаКак напечатать метод пустот от основного метода
abstract class Shape
{
int width, height;
String color;
public void draw()
{
}
} // end Shape class
``
class Rectangle extends Shape
{
Rectangle(int w, int h, String color)
{
width = w;
height = h;
this.color = new String(color);
}
public void draw()
{
System.out.println("I am a " + color + " Rectangle " + width + " wide and " + height + " high.");
}
}// end Rectangle class
``
class Circle extends Shape
{
Circle (int r, String color)
{
width = 2*r;
height = 2*r;
this.color = new String(color);
}
public void draw()
{
System.out.println("I am a " + color + " Circle with radius " + width + ".");
}
} // end Circle class
`` То, что я пытаюсь do создает новый класс для создания следующих выходов: Я голубой прямоугольник 20 шириной и 10 высотой. Я красный Круг с радиусом 30. Я зеленый прямоугольник 25 широкий и 25 высокий Но у меня возникла проблема вызова метода draw();
This is the main class:
public class Caller
{
public static void main(String args[])
{
Caller call= new Caller();
Shape[] myShape = new Shape[3];
myShape[0] = new Rectangle(20,10,"blue");
myShape[1] = new Circle(30, "red");
myShape[2] = new Rectangle(25,25, "green");
for (int i=0; i < 3; i++)
{
System.out.println();
}
call.draw(Rectangle);
call.draw(Circle);
}
}
относительно, '" Но у меня проблема с вызовом метода draw(); "' - Какая у вас проблема? Вы хотите задать как можно более конкретный вопрос, если мы сможем вам помочь. –
Возможно, это поможет, если вы выясните, какие переменные-члены являются частными, защищенными или общедоступными. Обратите внимание, что вы не укажете это в своем коде, а afaik Java использует защищенные по умолчанию. – luksch
Будет хорошо, если вы будете следить за кодом в отступлении – Micha