Java 面向对象 --表示图形练习

作业:实现一个类,用来表示图形,定义方法,可以分别计算出矩形和圆形的面积和周长(要求用到抽象思维)

思路,这个作业说要用到抽象思维,所以肯定要抽象出一些公共的东西,这里的矩形和圆形 能抽象出公共的面积和周长方法,

我们可以用接口来实现;

package com.xuyigang1234.chp03.lianxi;
/**
 * 图形接口
 * */
public interface XingZhuang {
    public void mianJi();
    public void zhouChang();

}
package com.xuyigang1234.chp03.lianxi;
/**
 * 矩形类
 * */
public class Rectangle implements XingZhuang{
    private float a;
    private float b;
    public Rectangle(float a,float b) {
        super();
        this.a=a;
        this.b=b;        
    }
    @Override
    public void mianJi() {
        System.out.println("矩形的面积为:"+ this.a*this.b);        
    }

    @Override
    public void zhouChang() {
        System.out.println("矩形的周长为:"+ (this.a+this.b)*2);
        
    }
    
    

}
package com.xuyigang1234.chp03.lianxi;
/**
 * 圆形类
 * */
public class Circular implements XingZhuang{
    private float r;
    public Circular(float r) {
        super();
        this.r=r;        
    }
    @Override
    public void mianJi() {
        System.out.println("圆形的面积为:"+ Math.PI*this.r*this.r);        
    }

    @Override
    public void zhouChang() {
        System.out.println("圆形的周长为:"+ Math.PI*this.r*2);
        
    }
    
    

}
package com.xuyigang1234.chp03.lianxi;

public class TestXingZhuang {
    public static void main(String[] args) {
        XingZhuang jx= new Rectangle(3,3);
        jx.mianJi();
        jx.zhouChang();
        XingZhuang yx= new Circular(3);
        yx.mianJi();
        yx.zhouChang();
        
    }
}

猜你喜欢

转载自www.cnblogs.com/xyg-zyx/p/9833218.html