ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 상속을 이용하여 도형의 넓이 구하기
    JAVA/Interface 2020. 10. 11. 17:10

    문제

    도형(원, 삼각형, 직사각형)의 넓이와 둘레 구하는 공식은 인터넷을 검색해서 확인하세요.

     

    1. 삼각형의 넓이는 헤론의 공식을 참고하세요.

          넓이 = Math.sqrt(s(s-a)(s-b)(s-c)) s = (a+b+c)/2

     

    2. Shape 인터페이스를 원과 삼각형과 직사각형 클래스에 구현하세요.

    (implement -> 넓이와 둘레는 오버라이딩 해야 합니다.)

     

    3. main()메소드가 있는 MainTest에서 각각 도형은 interface type으로 형변환 합니다.

    ( Shape s = new 원(10); s = new 삼각형(10,10,10); )

     

    4. 각 도형의 멤버변수는 생성자를 통해서 초기화 해주세요.

     

    5. java.text.DecimalFormat 객체를 이용해서 소수점 2째 자리까지 표현해주세요.

    - new DecimalFormat("#.00"); - format(double );

     

    6. Math.sqrt(a) => 루트

     

    ※ System.out.println("12.456700->"+new DecimalFormat("#.00").format(12.456700));

       double s = (10+10+10)/2.0;

       System.out.println(Math.sqrt(s*(s-10)*(s-10)*(s-10)));

     

    예시

    package test;

     

    interface Shape{

                           public double PI = 3.1415;

                           public double 넓이(); public double 둘레();

                         }

     

    class 원 implements Shape{

                          //반지름

     

                         //생성자를 만들어서 멤버변수를 초기화 하세요.

                         //넓이()

                         //둘레()

                        }

     

    class 삼각형 implements Shape{

                         //변1

                         //변2

                         //변3

     

                        //생성자를 만들어서 멤버변수를 초기화 하세요.

                        //넓이()

                       //둘레()

                  }

     

    class 직사각형 implements Shape {

                       //가로

                       //세로

     

                       //생성자를 만들어서 멤버변수를 초기화 하세요

                      //넓이()

                      //둘레()

                 }package test;

    interface Shape{
                 public double PI = 3.1415;
                 public double 넓이();
                 public double 둘레();
                }

    class 원 implements Shape{
    //반지름

    //생성자를 만들어서 멤버변수를 초기화 하세요
    //넓이()
    //둘레()

    }

    class 삼각형 implements Shape{
    //변1
    //변2
                    //변3

                    //생성자를 만들어서 멤버변수를 초기화 하세요
    //넓이()
    //둘레()
    }

    class 직사각형 implements Shape {
    //가로
    //세로

                    //생성자를 만들어서 멤버변수를 초기화 하세요
    //넓이()
    //둘레()
    }

     

    public class MainTest {

    /**
     * @param args
     */
    public static void main(String[] args) {
    //원객체 생성(반지름);
                                    Shape shape = new 원(20);
    //원의 넓이값과 둘레를 구해서 출력(메소드호출)

    //삼각형 객체 생성(변1,변2,변3)
                                     shape = new 삼각형(10,10,10);
    //삼각형의 넓이와 둘레 구해서 출력(메소드호출)

    //직사각형 객체생성(가로, 세로)
                                     shape = new 직사각형(25,20);
    //직사각형의 넓이와 둘레 구해서 출력(메소드 호출)

    }

     

    구현

    프로그램 실행결과

    소스 파일

    Quiz.java
    0.00MB

    'JAVA > Interface' 카테고리의 다른 글

    익명  (0) 2020.10.11
    상속과 다중 인터페이스  (0) 2020.10.11
    다중 상속  (0) 2020.10.11
    Interface의 개념  (0) 2020.10.11

    댓글

Designed by Tistory.