java之多态的应用

abstractclass Myshape{

     publicabstractvoid getArea();

     publicabstractvoid getLength();

}

class Circel extends Myshape{

    publicstaticfinaldoublePI=3.14;

    doubler;

    public Circel(double r){

       this.r=r;

    }

    publicvoid getArea(){

       System.out.println("圆的面积:"+PI*r*r);

    }

    publicvoid getLength(){

       System.out.println("圆的周长:"+PI*r*2);

    }

}

class Rect extends Myshape{

    intheight;

    intweight;

    public Rect(int height,int weight){

       this.height=height;

       this.weight=weight;

    }

    publicvoid getArea(){

       System.out.println("矩形的面积:"+height*weight);

    }

    publicvoid getLength(){

       System.out.println("矩形周长:"+(height+weight)*2);

    }

}

 

//public class duotai{

//  public static void main(String[] args) {

//     Circel c=new Circel(3);

//     print(c);

//     Rect a=new Rect(3,4);

//     print(a);

//  }

//  public static void print(Myshape s){

//     s.getArea();

//     s.getLength();

//  }

//}

//多态用于返回值类型

publicclass duotai{

    publicstaticvoid main(String[] args){

       Myshape z=getshape(0);

       z.getArea();

       z.getLength();

    }

//  public static void print(Myshape s){

//     s.getArea();

//     s.getLength();

//  }

    publicstatic Myshape getshape(int i){

       if(i==0){

           returnnew Circel(3);

       }else{

           returnnew Rect(3,4);

       }

    }

}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值