Back-end/Algorithm

[java] 사각형 클래스를 상속받아 객체지향구조 구현

Nellie Kim 2022. 9. 5. 09:32
728x90

문제) enum(Type)도 포함하여 클래스 총 5개 작성하여(Quadrangle, Rectangle, Square, Type, Quadrangle) 아래 처럼 구현하기.

 

 

정답)

 

1. Quadrangle 클래스 작성 (compareTo 메서드와, 같은사각형인지 비교하는 boolean isSameType메서드도 작성)

Comparable을 상속받아서 넓이 비교하는 compareTo메서드를 오버라이딩하는게 핵심이다.

 

2. Quadrangle 클래스를 상속받은 Rectangle 클래스 작성

3. Quadrangle 클래스를 상속받은 Square 클래스 작성

 

4. enum 사용하여 Square, Rectangle 넣기

5. QuadrangleRunner 만들어서 실행 클래스 만들기

 

 

고찰)  Quadrangle클래스에서 필드 작성할때 static int width , static int height 로 작성해서 모든사각형 넓이가 같아지는 불상사가 발생했다;; static을 이런데 쓰면 안되는데 실수했다.  static 쓸데 안쓸데 판단 정확히 하자..

 

그리고 compareTo , enum 사용에 매우 미숙함...  계속 코딩해보면서 익숙해지자.....!!!