关于java多态问题请教,代码咋写

(多态)写一个函数 getShape(int i),该函数的参数为一个整数 i,返回值由 i 决定:
a) i == 0 时,返回一个半径为 1 的圆形
b) i == 1 时,返回一个长为 3 宽为 2 的矩形
c) i == 2 时,返回一个边长为 2 的正方形


public  double getShape(int i) {
    if (i == 0) {
        return 3.14*1*1;
    } else if (i == 1) {
        return 3*2;
    } else {
        return 2*2;
    }
    
    return 0;
}


public class Test1 {
    public static void main(String[] args) {
        show(0);
        show(1);
        show(2);
    }

    public static void show(int i){
        if (i == 0){
            YX a = new YX();
            a.tx();
        }else if(i == 1){
            JX c = new JX();
            c.tx();
        }else if (i == 2){
            SJX c = new SJX();
            c.tx();
        }

    }
}
abstract class TX{
    abstract void tx();
}
class YX extends TX{
    @Override
    void tx() {
        System.out.println("圆形");
    }
}
class JX extends TX{
    @Override
    void tx(){
        System.out.println("矩形");
    }
}
class SJX extends TX{
    @Override
    void tx() {
        System.out.println("三角形");
    }
}