假设我们想设计一类CSphere,可用来处理圆球的一些相关事务。CSphere类初步的编写如下:
class CSphere{
public double radius;
private int x;
private int y;
private int z;
public void setX(int n){
x=n;
}
public void setY(int n){
y=n;
}
public void setZ(int n){
z=n;
}
public void setRadius(double r){
radius=r;
}
public void show(){
System.out.println("x="+x+",y="+y+",z="+z);
System.out.println(",radius="+radius);
}
}public class hw9_10{
public static void main(String args[]){
CSphere sph=new CSphere();sph.setX(3);
sph.setY(6);
sph.setZ(8);
sph.setRadius(2.0);
sph.show();
}
}上面的程序代码初步定义了CSphere类,它具有五个数据成员,分别为圆周率pi,半径radius与圆心坐标x,y,z,以及五个method,分别为用来设置球心坐标x,y,z的setX(),setY(),setZ(),设置半径的setRadius(),和用来显示圆球成员信息的show()。
在main()里,我们设置了球心坐标x为3,y为6,z为8,半径为2.0.最后并利用show()显示各项数据内容。如果执行此一程序,可得到如下的执行结果:
x=3,y=6,z=8,radius=2.0
试根据题意回答下列各题:
a),在CSphere类里,setX(),setY()与setZ()method分别是用来设置球心坐标x,y,z。试编写另一method,public void setCenter(int num,int den),可用来同时设置球心坐标和半径radius值。
b),试将CSphere类里的show()method改成hw9_10里的成员函数,而非CSphere类里的成员函数。求高手解答啊。我实在是想不出如何用public void setCenter(int num,int den) 来表示坐标!