首先纠正一下,抽象方法没有方法体,只有在子类的实现中才必须要完成方法体.
/**
*接口及两个矩形类在Polygon包下.测试类位于另外一个包testboard.
*/
/**
*1、接口
*/
packagePolygon;
/**
*
*@authorHenrySun
*/
publicabstractinterfaceCircumf{
publicabstractdoubleshapeCir();
}
/**
*2、正方形类
*/
packagePolygon;
/**
*
*@authorHenrySun
*/
publicclassSquareimplementsCircumf{
doublelength;
publicSquare(doublelength){
this.length=length;
}
publicdoubleshapeCir(){
returnlength*4;
}
}
/**
*3、长方形类
*/
packagePolygon;
/**
*
*@authorHenrySun
*/
publicclassRectangelimplementsCircumf{
doublelength;
doublewidth;
publicRectangel(doublelength,doublewidth){
this.length=length;
this.width=width;
}
publicdoubleshapeCir(){
return(length+width)*2;
}
}
/**
*4、测试类
*/
packagetestboard;
importPolygon.*;
/**
*
*@authorHenrySun
*/
publicclassMainTest{
publicvoidCalculate(){
SquareoSquare=newSquare(1.5);
RectangeloRectangel=newRectangel(1.2,1.6);
doubledPerimeterS=oSquare.shapeCir();
doubledPerimeterP=oRectangel.shapeCir();
System.out.println("Square.Perimeter="+dPerimeterS+"nRectangle.Perimeter="+dPerimeterP);
}
}