day09--抽象类的练习
This commit is contained in:
@@ -0,0 +1,12 @@
|
||||
package com.inmind.abstract_test07;
|
||||
/*
|
||||
简单练习:定义一个图形类,求周长和面积,但是有不知道如何实现,只能由具体的图形子类(长方形,圆形)实现
|
||||
*/
|
||||
public class Demo11 {
|
||||
public static void main(String[] args) {
|
||||
//创建一个长方形,求面积和周长
|
||||
Rectangle rectangle = new Rectangle(4, 3);
|
||||
System.out.println("长方形面积为:"+rectangle.getArea());
|
||||
System.out.println("长方形周长为:"+rectangle.getZC());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
package com.inmind.abstract_test07;
|
||||
//长方形类
|
||||
public class Rectangle extends Shape{
|
||||
|
||||
//在创建长方形对象,必须传入2个属性:长和宽
|
||||
public Rectangle(int chang ,int kuan){
|
||||
super(chang,kuan,0);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public int getArea() {
|
||||
return getChang()*getKuan();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getZC() {
|
||||
return 2*(getChang()+getKuan());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,46 @@
|
||||
package com.inmind.abstract_test07;
|
||||
//图形类:定义一些功能和属性
|
||||
public abstract class Shape {
|
||||
//至少需要长,宽,半径
|
||||
private int chang;
|
||||
private int kuan;
|
||||
private int r;
|
||||
//定义构造方法
|
||||
public Shape() {
|
||||
}
|
||||
|
||||
public Shape(int chang, int kuan, int r) {
|
||||
this.chang = chang;
|
||||
this.kuan = kuan;
|
||||
this.r = r;
|
||||
}
|
||||
|
||||
//设置get/set方法,访问私有属性
|
||||
public int getChang() {
|
||||
return chang;
|
||||
}
|
||||
|
||||
public void setChang(int chang) {
|
||||
this.chang = chang;
|
||||
}
|
||||
|
||||
public int getKuan() {
|
||||
return kuan;
|
||||
}
|
||||
|
||||
public void setKuan(int kuan) {
|
||||
this.kuan = kuan;
|
||||
}
|
||||
|
||||
public int getR() {
|
||||
return r;
|
||||
}
|
||||
|
||||
public void setR(int r) {
|
||||
this.r = r;
|
||||
}
|
||||
|
||||
//求周长和面积
|
||||
public abstract int getArea();
|
||||
public abstract int getZC();
|
||||
}
|
||||
Reference in New Issue
Block a user