抽象类

一、实验目的

  1. 掌握抽象类的定义。
  2. 掌握对象的创建。
  3. 掌握方法的定义和调用
  4. 掌握构造函数的使用

二、实验原理
类的抽象和继承。

三、实验要求
培养学生独立思考和独立工作的能力。

四、实验步骤、数据记录及处理
编程:创建一个抽象类表示图形这个概念,然后创建一个矩形类可以求矩形得周长和面积。创建一个对象,求给定尺寸的矩形的体积。 定义一个圆形类,做1、2中得事情。

package com.company;
import java.util.Scanner;
abstract class Action{
   
    final static double PI=3.1415926;

    public abstract void area();
    public abstract void perimeter();
}
class Rectangle2 extends Action {
   
    private double width;
    private double length;

    Rectangle2(double length, double width) {
   
        this.width = width;
        this.length = length;
    }

    public void area() {
   
        System.out.println("面积为:" + length * width);
    }
    public void perimeter() {
   
        System.out.println("周长为:" + 2 * (length + width));
    }
}
class Round2 extends Action {
   
    private double radius;

    public Round2(double a){
   
        radius = a;
    }
    public void area(){
   
        System.out.println("面积为:"+PI * radius * radius);
    }
    public void perimeter(){
   
        System.out.println("周长为:"+2 * PI * radius);
    }

}
public class chouxiang{
   
    public static void main(String[] args) {
   
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入长:");
        int length = scanner.nextInt();
        System.out.println("请输入宽:");
        int width = scanner.nextInt();
        System.out.println("请输入半径:");
        int radius = scanner.nextInt();
        Action[] a = new Action[2];
        a[0]=new Rectangle2(length,width);
        a[1]=new Round2(radius);
        for(Action s:a){
   
            s.perimeter();
            s.area();
        }
    }
}

运行截图