class Tom{
void f(int x,double y){
x=x+1;
y=y+1;
System.out.printf("参数x和y的值分别是:%d,%3.2f\n",x,y);
}
}
public class Example4_7{
public static void main(String arg[]){
int x=10;
double y=12.58;
Tom cat=new Tom();
cat.f(x,y);
System.out.printf("main方法中x和y的值仍然分别是:%d,%3.2f\n",x,y);
}
}
class Jerry{
int leg;
Jerry(int n){
leg=n;
}
void setLeg(int n){
leg=n;
}
int getLeg(){
return leg;
}
}
class Tom{
void f(Jerry mouse){
mouse.setLeg(12);
System.out.println("在执行方法f时,参数mouse修改了自己的leg的值");
System.out.println("当前参数mouse的成员leg的值:"+mouse.getLeg());
mouse=null;
//mouse.setLeg(12);
}
}
public class Example4_8{
public static void main(String arg[]){
Tom cat=new Tom();
Jerry jerry=new Jerry(2);
System.out.println("在调用方法f之前,jerry的成员leg的值:"+jerry.getLeg());
cat.f(jerry);
System.out.println("在调用方法f之前,jerry的成员leg的值:"+jerry.getLeg());
}
}
class Circle{
double radius;
Circle(double r){
radius=r;
}
double computerArea(){
return 3.14*radius*radius;
}
void setRadius(double newRadius){
radius=newRadius;
}
double getRadius(){
return radius;
}
}
class Cone{
Circle bottom;
double height;
Cone(Circle c,double h){
bottom=c;
height=h;
}
double computerVolume(){
double volume;
volume=bottom.computerArea()*height/3.0;
return volume;
}
void setBottomRadius(double r){
bottom.setRadius(r);
}
double getBottomRadius(){
return bottom.getRadius();
}
}
public class Example4_9{
public static void main(String arg[]){
Circle circle=new Circle(8);
Cone circular=new Cone(circle,18);
System.out.println("circular的bottom半径:"+circular.getBottomRadius());
System.out.println("circular的体积:"+circular.computerVolume());
circular.setBottomRadius(88);
System.out.println("circular的bottom半径:"+circular.getBottomRadius());
System.out.println("circular的体积:"+circular.computerVolume());
}
}