-
Power JAVA 10장 ) 인터페이스와 다형성 - Programming_2IT/솔루션) Power Java 2019. 5. 12. 17:56
<2016. 10. 11. 12:30>
Power JAVA 10장 ) 인터페이스와 다형성 - Programming_2
=============Drawable.java(인터페이스)================== package Programming_2; //다음과 같은 인터페이스들을 정의하라. - interface Drawable public interface Drawable { void draw(); } =================ShapeTest.java===================== * 다음과 같은 인터페이스들을 정의하라. - interface Drawable * 본문의 ShapeTest.java에 등장하는 2차원 도형인 원, 사각형, 삼각형 등이 위의 인터페이스를 구현하도록 수정하라. * draw() 메소드에서는 실제로 그리지는 않고 메세지만 출력하라. * main() 에서 Drawable 객체 배열을 생성하고 * 배열의 각 원소에 대하여 draw()를 호출하여 랜덤하게 객체를 그리는 프로그램을 작성하라. */ package Programming_2; //본문의 ShapeTest.java에 등장하는 2차원 도형인 원, 사각형, 삼각형 등이 위의 인터페이스를 구현하도록 수정하라. class Shape implements Drawable { protected int x, y; public void draw() { System.out.println("Shape Draw"); } } ; class Rectangle extends Shape { private int width, height; public void setWidth(int w) { width = w; } public void setHeight(int h) { height = h; } public void draw() { System.out.println("Rectangle Draw"); } } ; class Triangle extends Shape { private int base, height; public void draw() { System.out.println("Triangle Draw"); } } ; class Circle extends Shape { private int radius; public void draw() { System.out.println("Circle Draw"); } } ; public class ShapeTest { private static Shape arrayOfShapes[]; public static void main(String arg[]) { init(); drawAll(); //main() 에서 Drawable 객체 배열을 생성하고 int select; Drawable[] draws = new Drawable[10]; //배열의 각 원소에 대하여 draw()를 호출하여 랜덤하게 객체를 그리는 프로그램을 작성하라. for (int i=0; i<draws.length; i++) { select = (int)(Math.random()*3 + 1); switch(select) { case 1 : draws[i] = new Rectangle(); break; case 2 : draws[i] = new Triangle(); break; case 3 : draws[i] = new Circle(); break; } System.out.printf("%d번째 도형 : ",(i+1)); draws[i].draw(); } } public static void init() { arrayOfShapes = new Shape[3]; arrayOfShapes[0] = new Rectangle(); arrayOfShapes[1] = new Triangle(); arrayOfShapes[2] = new Circle(); } public static void drawAll() { for (int i = 0; i < arrayOfShapes.length; i++) { arrayOfShapes[i].draw(); } } } ;
'IT > 솔루션) Power Java' 카테고리의 다른 글
Power JAVA 10장 ) 인터페이스와 다형성 - Programming_5 (0) 2019.05.12 Power JAVA 10장 ) 인터페이스와 다형성 - Programming_4 (0) 2019.05.12 Power JAVA 10장 ) 인터페이스와 다형성 - Programming_1 (0) 2019.05.12 Power JAVA 10장 ) 인터페이스와 다형성 - LAB (0) 2019.05.12 Power JAVA 10장 ) 상속 - Programming_4 (0) 2019.05.12