java设计一个形状类,应用接口,求周长和面积再打印

package Shape;

import java.util.Scanner;
import static java.lang.Math.PI;

abstract class Shape {
public abstract double shapeC();
public abstract double shapeS();
}

class Circle extends Shape {
private double r;
public Circle (double r){
this.r = r;
}
public double getR() {
return r;
}
public void setR(double r) {
this.r = r;
}
public double shapeC(){
return PI2r;
}
public double shapeS(){
return PIrr;
}
}

class Triangle extends Shape {
private double a;
private double b;
private double c;
public Triangle(double a,double b,double c){
this.a = a;
this.b = b;
this.c = c;
}
public double getA() {
return a;
}
public void setA(double a) {
this.a = a;
}
public double getB() {
return b;
}
public void setB(double b) {
this.b = b;
}
public double getC() {
return c;
}
public void setC(double c) {
this.c = c;
}
public double shapeC(){
return a+b+c;
}
public double shapeS(){
double s = (a+b+c)/2.0;
return Math.sqrt(s*(s-a)(s-b)(s-c));
}
}

class Rectangle extends Shape {
private double l;
private double w;
public Rectangle(double l, double w) {
this.l = l;
this.w = w;
}
public double getL() {
return l;
}
public void setL(double l) {
this.l = l;
}
public double getW() {
return w;
}
public void setW(double w) {
this.w = w;
}
public double shapeC(){
return (l+w)2;
}
public double shapeS(){
return l
w;
}
}

public class Calculate{
public static void main(String[]args){
boolean flag = true;
while(flag){
System.out.println("=============================");
System.out.println("======请选择需要计算的图形======");
System.out.println(" (1)圆形");
System.out.println(" (2)矩形");
System.out.println(" (3)三角形");
System.out.println(" (4)退出");
Scanner num = new Scanner(System.in);
int n = num.nextInt();
switch(n){

case 1:{
System.out.println("请输入圆的半径:");
Scanner sc = new Scanner(System.in);
double a = sc.nextDouble();
Circle circle = new Circle(a);
System.out.println("圆的半径为:"+circle.getR());
System.out.println("圆的周长为:"+circle.shapeC());
System.out.println("圆的面积为:"+circle.shapeS());
}
break;

case 2:{
System.out.println("请输入矩形的边长:");
Scanner s = new Scanner(System.in);
System.out.println("输入矩形的长:");
double l = s.nextDouble();
System.out.println("输入矩形的宽:");
double w = s.nextDouble();
Rectangle rectangle = new Rectangle(l,w);
System.out.println("矩形的长为:"+rectangle.getL()+"矩形的宽为:"+rectangle.getW());
System.out.println("矩形的周长为:"+rectangle.shapeC());
System.out.println("矩形的面积为:"+rectangle.shapeS());
}
break;

case 3:{
System.out.println("请输入三角形的三边:");
Scanner s = new Scanner(System.in);
double a = s.nextDouble();
double b = s.nextDouble();
double c = s.nextDouble();
if ((a+b)>c && (a+c)>b && (b+c)>a){
Triangle triangle = new Triangle(a,b,c);
System.out.println("三角形的三边:"+ triangle.getA() + ", "+triangle.getB() + ", "+triangle.getC());
System.out.println("三角形的周长:"+triangle.shapeC());
System.out.println("三角形的面积:"+triangle.shapeS());
}else{
System.out.println("无法构成三角形,请重新输入!");
}
}
break;

case 4:{
flag = false;
}
break;
}
}
}
}

img

代码不是都写完了吗。