作業:實現一個類,用來表示圖形,定義方法,可以分別計算出矩形和圓形的面積和周長(要求用到抽象思維)
思路,這個作業說要用到抽象思維,所以肯定要抽象出一些公共的東西,這里的矩形和圓形 能抽象出公共的面積和周長方法,
我們可以用接口來實現;
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(); } }
