-
Power JAVA 10장 ) 인터페이스와 다형성 - Programming_1IT/솔루션) Power Java 2019. 5. 12. 17:55
<2016. 10. 11. 12:29>
Power JAVA 10장 ) 인터페이스와 다형성 - Programming_1
===========Movable.java(인터페이스)=================== package Programming_1; //다음과 같은 인터페이스를 정의하라. - interface Movable public interface Movable { void move(int dx, int dy); } =========ShapeTest.java===================== * 다음과 같은 인터페이스를 정의하라. - interface Movable * 본문의 ShapeTest.java에 등장하는 2차원 도형인 원, 사각형, 삼각형 등이 위의 인터페이스를 구현하도록 수정하라. * move() 메소드는 도형의 기준점을 이동한다. main()에서 moveable 객체 배열을 생성하고 * 배열의 각 원소에 대하여 move()를 호출하여 랜덤하게 객체를 이동시키는 프로그램을 작성하라. */ package Programming_1; //본문의 ShapeTest.java에 등장하는 2차원 도형인 원, 사각형, 삼각형 등이 위의 인터페이스를 구현하도록 수정하라. class Shape implements Movable { protected int x, y; public void move(int dx,int dy) { dx = (int)(Math.random()*10)+1; dy = (int)(Math.random()*10)+1; System.out.printf("좌표는 %d, %d 입니다.\n",dx,dy); } 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()에서 moveable 객체 배열을 생성하고 Movable[] mmove = new Movable[3]; mmove[0] = new Triangle(); mmove[1] = new Rectangle(); mmove[2] = new Circle(); //배열의 각 원소에 대하여 move()를 호출하여 랜덤하게 객체를 이동시키는 프로그램을 작성하라. for (int i=0; i<mmove.length; i++) { mmove[i].move((int)(Math.random()*10)+1,(int)(Math.random()*10)+1); } } 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_4 (0) 2019.05.12 Power JAVA 10장 ) 인터페이스와 다형성 - Programming_2 (0) 2019.05.12 Power JAVA 10장 ) 인터페이스와 다형성 - LAB (0) 2019.05.12 Power JAVA 10장 ) 상속 - Programming_4 (0) 2019.05.12 Power JAVA 10장 ) 상속 - Programming_2 (0) 2019.05.12