[Java] Shape类 →→→→→进入此内容的聊天室

来自 , 2019-09-26, 写在 Java, 查看 107 次.
URL http://www.code666.cn/view/52d080a3
  1. import java.util.Scanner;
  2. public class Main {
  3.         public static void main(String[] args) {
  4.                 Scanner scan = new Scanner(System.in);
  5.                 double length = scan.nextDouble();
  6.                 Shape s = new Square(length);
  7.                 System.out.printf("%.2f ", s.getPerimeter());
  8.                 System.out.printf("%.2f\n", s.getArea());
  9.  
  10.                 length = scan.nextDouble();
  11.                 double wide = scan.nextDouble();
  12.                 Shape r = new Rectangle(length, wide);
  13.                 System.out.printf("%.2f ", r.getPerimeter());
  14.                 System.out.printf("%.2f\n", r.getArea());
  15.  
  16.                 double radius = scan.nextDouble();
  17.                 Shape c = new Circle(radius);
  18.                 System.out.printf("%.2f ", c.getPerimeter());
  19.                 System.out.printf("%.2f\n", c.getArea());
  20.  
  21.                 scan.close();
  22.         }
  23. }
  24.  
  25. class Shape {
  26.         private double length;
  27.         private double wide;
  28.         public Shape(double len) {
  29.                 length = len;
  30.         }
  31.         public Shape(double len, double wi) {
  32.                 length = len;
  33.                 wide = wi;
  34.         }
  35.         public double getLength() {
  36.                 return length;
  37.         }
  38.         public double getWide() {
  39.                 return wide;
  40.         }
  41.         public double getPerimeter() {
  42.                 return 2 * (length + wide);
  43.         }
  44.         public double getArea() {
  45.                 return length * wide;
  46.         }
  47. }
  48.  
  49. class Square extends Shape {
  50.         public Square(double len) {
  51.                 super(len, len);
  52.         }
  53.         public Square(double len, double wi) {
  54.                 super(len, wi);
  55.         }
  56.         public double getLength() {
  57.                 return super.getLength();
  58.         }
  59.         public double getWide() {
  60.                 return super.getWide();
  61.         }
  62.         public double getPerimeter() {
  63.                 return super.getPerimeter();
  64.         }
  65.         public double getArea() {
  66.                 return super.getArea();
  67.         }
  68. }
  69.  
  70. class Rectangle extends Square{
  71.     public Rectangle(double len, double wi) {
  72.         super(len, wi);
  73.     }
  74.     public double getPerimeter() {
  75.         return super.getPerimeter();
  76.     }
  77.     public double getArea() {
  78.         return super.getArea();
  79.     }
  80. }
  81.  
  82. class Circle extends Shape{
  83.     public Circle(double len) {
  84.         super(len);
  85.     }
  86.     public double getPerimeter() {
  87.         return 2*3.14159*super.getLength();
  88.     }
  89.     public double getArea() {
  90.         return 3.14159*super.getLength()*super.getLength();
  91.     }
  92. }

回复 "Shape类"

这儿你可以回复上面这条便签

captcha