package trace01;
abstract class square{ //抽象类
private int a;
private int b;
public void setab(int a,int b){
this.a=a;
this.b=b;
}
public int geta(){
return a;
}
public int getb(){
return b;
}
public abstract int area(); //求面积
public abstract int perimeter(); //求周长
}
class zSquare extends square{
public zSquare(){};
public int area(){
return geta()*geta();
}
public int perimeter(){
return 4*geta();
}
}
class Rectangle extends square{
public Rectangle(){};
public int area(){
return geta()*getb();
}
public int perimeter(){
return 2*(geta()+getb());
}
}
public class squareDemo {
public static void main(String[] args){
square s1=new zSquare(); //用子类实例化父类抽象类对象
square s2=new Rectangle();
s1.setab(10, 0);
s2.setab(14, 9);
System.out.println("正方形的信息是www.fkit.org:");
System.out.println("正方形的面积是:"+solvearea(s1));
System.out.println("正方形的周长是:"+solveperimeter(s1));
System.out.println("长方形的信息是:");
System.out.println("长方形的面积是:"+solvearea(s2));
System.out.println("长方形的周长是:"+solveperimeter(s2));
}
public static int solvearea(square a){
return a.area();
}
public static int solveperimeter(square a){
return a.perimeter();
}
}
正方形的信息是:
正方形的面积是:100
正方形的周长是:40
长方形的信息是:
长方形的面积是:126
长方形的周长是:46