자바 기하학 적 그래 픽 면적 을 계산 하 는 인 스 턴 스 코드

모든 기하학 적 도형 에 있어 서 이름,면적 등 공 통 된 속성 이 있 는데 그 면적 을 계산 하 는 방법 은 각각 다르다.개발 을 간소화 하기 위해 서 는 프로그램 을 작성 하여 이름 을 입력 하 는 방법 을 정의 하고 추상 적 인 방법 으로 면적 을 계산 하 십시오.
사고 분석:
이른바 초 류 는 추상 적 인 부류 이다.이 추상 류 에는 두 가지 방법 이 있 는데 각각 도형 의 명칭 과 도형 의 면적 을 얻 는 데 쓰 인 다.그림 의 이름 을 얻 으 려 면 클래스 의 getClass().getSimple Name()방법 으로 이 루어 집 니 다.도형 의 면적 을 얻 으 려 면 면적 을 계산 하 는 방법 이 각각 다 르 기 때문에 이 방법 은 추상 적 인 방법 이다.하나의 자 류 는 원형 을 나타 내 고 원형의 반지름 은 구조 방법 을 통 해 얻 을 수 있 으 며 원형의 면적 은 초 류 중의 추상 적 인 방법 을 재 작성 하여 얻 을 수 있 으 며 그 중에서 원주 율 은 Math.PI 로 표시 할 수 있다.다른 유사 절차 2,반지름,길이,너비 등 매개 변 수 는 구조 방법 을 통 해 얻 을 수 있어 야 편리 하 잖 아 요.    코드 는 다음 과 같 습 니 다:

public abstract class Shape {
    public String getName() {//
        return this.getClass().getSimpleName();
    }
    public abstract double getArea();//
}
public class Circle extends Shape {
    private double radius;
    public Circle(double radius) {//
        this.radius = radius;
    }
    @Override
    public double getArea() {//
        return Math.PI * Math.pow(radius, 2);
    }
}
public class Rectangle extends Shape {
    private double length;
    private double width;
    public Rectangle(double length, double width) {//
        this.length = length;
        this.width = width;
    }
    @Override
    public double getArea() {//
        return length * width;
    }
}
public class Test {
    public static void main(String[] args) {
        Circle circle = new Circle(1);// 1
        System.out.println(" :" + circle.getName());
        System.out.println(" :" + circle.getArea());
        Rectangle rectangle = new Rectangle(1, 1);// 1
        System.out.println(" :" + rectangle.getName());
        System.out.println(" :" + rectangle.getArea());
    }
}
효 과 는 그림 과 같다.

좋은 웹페이지 즐겨찾기