Java中定义抽象类Shape,其中包含抽象方法double getPeremeter( )求周长和double getArea( )求面积。 定义一个矩形类,继承此抽象类,并自行扩充成员变量和方法,定义一个方法一次显示长和宽、周长和面积。
前言
首先我们需要定义一个抽象类Shape,在该抽象类中定义两个抽象方法getPeremeter与getArea,其次再定义一个子类Rectangle,由其继承父类Shape,在其中重写父类getPeremeter与getArea方法用来计算矩形的周长与面积,再构造length_and_width与area_and_perimeter方法,用来输出显示矩形的长宽、周长与面积。
一、什么是抽象类?
抽象类是不能使用new方法进行实例化的类即没有具体实例对象的类。Java中用修饰符abstract来说明抽象类!
二、实现步骤
1.创建抽象类
代码如下(示例):
package zjy_zy13;
public abstract class Shape {//构造一个“形状”抽象类
public abstract double getArea(double a,double b);//定义一个抽象方法getArea求面积
public abstract double getPerimeter(double a,double b);//定义一个抽象方法getPerimeter求周长
}
2.创建子类
代码如下(示例):
package zjy_zy13;
public class Rectangle extends Shape{//定义一个矩形类继承“形状”抽象类
private double Area,Perimeter;
public double getArea(double a,double b) {//重写父类getArea方法,用来实现矩形面积的计算
Area = a*b;
return Area;
}
public double getPerimeter(double a,double b) {//重写父类getPerimeter方法,用来实现矩形周长的计算
Perimeter = (a+b)*2;
return Perimeter;
}
public void length_and_width(double a,double b) {//构造一个length_and_width方法用来输出该矩形的长和宽
System.out.println("该矩形的长和宽分别为:"+ a + ","+ b);
}
public void area_and_perimeter() {//构造一个area_and_perimeter()方法用来输出矩形的面积和周长
System.out.println("该矩形的面积和周长分别为:"+Area +","+Perimeter);
}
}
3.创建主体
代码如下(示例):
package zjy_zy13;
public class zjy_zy13 {
public static void main(String[] args) {
// TODO 自动生成的方法存根
double a=4,b=5;
Rectangle r = new Rectangle();
r.getArea(a, b);
r.getPerimeter(a, b);
r.area_and_perimeter();
r.length_and_width(a,b);
}
}
运行结果展示
该矩形的面积和周长分别为:20.0,18.0
该矩形的长和宽分别为:4.0,5.0
总结
抽象是从众多的事物中抽取出共同的、本质性的特征,而舍弃其非本质的特征。