package org.jsoft.text;
public abstract class Shape {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Shape(){}
abstract String display();
}
package org.jsoft.text;
public class Circle extends Shape{
private double r;
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getR() {
return r;
}
public void setR(double r) {
this.r = r;
}
public Circle(double r){
this.r=r;
}
public Circle(){}
public String display(){
return getName()+"的半径是:"+getR();
}
}
package org.jsoft.text;
public class Rectangle extends Shape{
private double width;
private double height;
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getWidth() {
return width;
}
public void setWidth(double width) {
this.width = width;
}
public double getHeight() {
return height;
}
public void setHeight(double height) {
this.height = height;
}
public Rectangle(double width,double height){
this.height=height;
this.width=width;
}
public Rectangle(){}
public String display(){
return getName()+"矩形的宽是:"+getWidth()+",高是:"+getHeight();
}
}
package org.jsoft.text;
public class Square extends Shape{
private double x;
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getX() {
return x;
}
public void setX(double x) {
this.x = x;
}
public Square(double x){
this.x=x;
}
public Square(){}
public String display(){
return getName()+"正方形的边长是:"+getX();
}
}
package org.jsoft.text;
import java.util.Scanner;
public class TextShape {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入0~2:");
int i=sc.nextInt();
TextShape t=new TextShape();
System.out.println(t.getShape(i).display());}
public Shape getShape(int i) {
if(i==0){
Circle c=new Circle(1);
c.setName("圆");
c.setR(1);
return c;
}else if(i==1){
Rectangle r=new Rectangle(1,1);
r.setName("矩形");
r.setHeight(3);
r.setWidth(4);
return r;
}else if(i==2){
Square s=new Square(2);
s.setName("正方形");
s.setX(3);
return s;
}else{
return null;
}
}
}
请输入0~2:
2
正方形正方形的边长是:3.0