(1)设计一个表示二维平面上圆的类 Circle,有表示圆半径的 protected类型的成员变量
(1)
设计一个表示二维平面上圆的类
Circle
,有表示圆半径的
protected
类型的成员变
量
radius
、获取和设置
radius
值的
public
方法、计算圆面积的
public
方法。
(2)
设计一个表示圆柱体的类
Cylinder
,它继承自类
Circle
,还包含有表示圆柱体高
的
protected
类型的成员变量
height
、获取和设置
height
值的
public
方法、计算圆柱体体
积的
public
方法。
(3)
建立若干个
Cylinder
对象,输出其半径、高及其体积的值。
要求:
A
、每个类包含无参数和有参数的构造方法。构造方法用于对成员变量初始化,无
参数的构造方法将成员变量初始化为
0
值。
B
、子类的构造方法调用父类的构造方法,对父类中的成员变量初始化。
(较难)
import
java.lang.Math;
class
Circle{
protected
double
radius
;
public
Circle(){
radius
=0;}
public
Circle(
double
r
){
radius
=
r
;}
public
void
setRadius(
double
r
){
radius
=
r
;}
public
double
getRadius(){
return
radius
;}
public
double
area(){
return
Math.
PI
*
radius
*
radius
;}
}
class
Cylinder
extends
Circle{
protected
double
height
;
public
Cylinder(){
height
=0;}
public
Cylinder(
double
r
,
double
h
){
super
(
r
);
height
=
h
;
}
public
void
setHeight(
double
h
){
height
=
h
;}
public
double
getHeight(){
return
height
;}
public
double
volume(){
return
area()*
height
;}
}
public
class
testGEO {
public
static
void
main(String[]
args
) {
//
TODO
Auto-generated method stub
Cylinder
c1
=
new
Cylinder();
System.
out
.println(
"c1
的半径为:
"
+
c1
.getRadius());
System.
out
.println(
"c1
的高为:
"
+
c1
.getHeight());
System.
out
.println(
"c1
的体积为:
"
+
c1
.volume());
Cylinder
c2
=
new
Cylinder(3,4);
System.
out
.println(
"c2
的半径为:
"
+
c2
.getRadius());
System.
out
.println(
"c2
的高为:
"
+
c2
.getHeight());
System.
out
.println(
"c2
的体积为:
"
+
c2
.volume());
Cylinder
c3
=
new
Cylinder();
c3
.setRadius(6);
c3
.setHeight(8);
System.
out
.println(
"c3
的半径为:
"
+
c3
.getRadius());
System.
out
.println(
"c3
的高为:
"
+
c3
.getHeight());
System.
out
.println(
"c3
的体积为:
"
+
c3
.volume());
}
}