Java oop8:讓每個類實現(xiàn)接口,計算面積和體積,Math.PI,@Override

//在幾何圖形中,分為平面圖和立體圖,平面圖可以計算面積 ,立體圖可以計算體積
//聲明父類幾何圖形抽象類,
//問題:現(xiàn)有圖形正方形,長方體和球體
//聲明接口平面圖和立體圖,讓下面每個類實現(xiàn)接口,
//正方形計算面積,長方體計算體積,
package a;
public class Student {
public static void main(String[] args) {
jihetuxing j=new zhengfangxing(10,5,3,3,1);
((zhengfangxing)j).jisuanmianji();
jihetuxing c=new changfangti(10,5,3,3,1);
((changfangti)c).jisuantiji();
jihetuxing a=new yuan(10,5,3,3,1);
((yuan)a).jisuantiji();
jihetuxing b=new yuan(10,5,3,3,1);
((yuan)b).jisuanmianji();
}
}
//計算面積的接口
interface mianji{//平面圖
void jisuanmianji();
}
//計算體積的接口
interface tiji{//立體圖
void jisuantiji();
}
abstract class jihetuxing{
public int chang;
public int kuan;
public int gao;
public int lengChang;
public int banjing;
public jihetuxing(int chang, int kuan, int gao,int lengChang, int banjing) {
super();
this.chang = chang;//10
this.kuan = kuan;//5
this.gao = gao;//3
this.lengChang = lengChang;//3
this.banjing = banjing;//1
}
}
//現(xiàn)在正方形繼承了集合圖形類,并且實現(xiàn)了計算面積的接口
class zhengfangxing extends jihetuxing implements mianji{
//調(diào)用父類的構(gòu)造方 法
public zhengfangxing(int chang, int kuan, int gao,int lengChang, int banjing) {
super(chang, kuan, gao,lengChang, banjing);
// TODO Auto-generated constructor stub
}
//實現(xiàn)計算面積的接口
@Override
public void jisuanmianji() {
// TODO Auto-generated method stub
System.out.println("正方體的面積"+(this.lengChang*this.lengChang*6));
}
}
//計算長方體的類
class changfangti extends jihetuxing implements tiji{
public changfangti(int chang, int kuan, int gao,int lengChang, int banjing) {
super(chang, kuan, gao,lengChang, banjing);
// TODO Auto-generated constructor stub
}
//計算體積
@Override
public void jisuantiji() {
// TODO Auto-generated method stub
System.out.println("長方體的體積是"+(this.chang*this.kuan*this.gao));
}
}
class yuan extends jihetuxing implements mianji,tiji{
public yuan(int chang, int kuan, int gao, int lengChang,int banjing) {
super(chang, kuan, gao, lengChang,banjing);
// TODO Auto-generated constructor stub
}
//計算體積
@Override
public void jisuantiji() {
// TODO Auto-generated method stub
System.out.println("球體的體積是"+(4/3*Math.PI*this.banjing*this.banjing*this.banjing));
}//Math.PI=3.1415926......
//計算面積
@Override
public void jisuanmianji() {
// TODO Auto-generated method stub
System.out.println("球體的面積"+4*Math.PI*this.banjing*this.banjing);
}
}
