参数传递之以变量为参数调用方法

在方法的语法格式中,方法可以有返回值,也可以有参数,当方法不需要传递任何参数时,括号内什么也不用写。下面我们今天就尝试一下像方法中传递一些类型的参数,来满足我们的需求。

调用方法并传递参数时,参数其实就是方法的自变量,因此参数要放在括号里来进行传递。

//我们就用一个圆柱体类Cylinder介绍变量的调用方法
class Cylinder{
    double radius;
    int height;
    double pi;
void setCylinder(double r,int h, double p){//这是具有三个参数的方法
    pi = p;
    radius = r;
    height = h;
double area{
    return pi*radius*radius;
        }
double voluem{
    return area()*height;
        }

    }
}

在上面的代码中我们定义了带参数的方法setCylinder(),且此方法接受了三个参数:r, h, p .

注意:setCylinder()方法中的三个参数变量 r ,h, p,均是局部变量,他们的作用范围仅限于setCylinder()方法的内部,一旦离开此方法,他们就会失去作用。

下面我们写一下主方法:

public class Demo{
public static void main(String[] args){
    Cylinder volu = new Cylinder();
    void setCylinder(2.5,5.3,3.14);
    System.out.println("底面半径"+volu.radius);
    System.out.println(volu.height);
    System.out.println(volu.pi);
    System.out.println("底面积"+volu.area());
    System.out.prntln("圆柱的体积"+voluem());

    }
}

volu.setCylinder(2.5,5,3.14);    就是调用此方法并传递参数到这个方法体

注意:若通过方法调用,将外部传入的参数赋值给类的成员变量,方法的形式参数与类的成员变量重名时,则需要用this关键字来标识成员变量。

例如上例中的方法setCylinder()

class Cylinder{
    double radius;
    ......
    void setCylinder(double radius){
    radius = radius;//用参数radius给成员变量radius赋值
    ......
    }
}

在上面的代码中赋值语句"radius = radius;"我们就分不清那个是成员变量,哪一个是方法的变量。由于形式参数是方法内部的局部变量,所以当成员变量与方法中的局部变量同名时,在方法内对同名变量的访问就是访问的那个局部变量。所以当我们特指成员变量时,应该这样写:

class Cylinder{
    double radius;
    ......
    void setCylinder(double radius){
        
        this.radius = radius
    ......
    }

}

这样我们用关键字this特指了成员变量

下面是完整代码:

public class Demo{
public static void main(String[] args){
    Cylinder volu = new Cylinder();
    void setCylinder(2.5,5.3,3.14);
    System.out.println("底面半径"+volu.radius);
    System.out.println(volu.height);
    System.out.println(volu.pi);
    System.out.println("底面积"+volu.area());
    System.out.prntln("园柱的体积"+voluem());

    }
}
//我们就用一个圆柱体类Cylinder介绍变量的调用方法
class Cylinder{
    double radius;
    int height;
    double pi;
void setCylinder(double r,int h, double p){//这是具有三个参数的方法
    pi = p;
    radius = r;
    height = h;
double area{
    return pi*radius*radius;
        }
double voluem{
    return area()*height;
        }

    }
}

  • 5
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值