带参数的方法

1.定义带参方法

  语法:

  <访问修饰符>返回值类型<方法名>(<参数列表>){

    //方法的主体

  }

  <访问修饰符>指该方法允许被访问的权限范围,只能是public,protected或privute,其中public访问修饰符表示该方法可以被任何代码调用,另外两种修饰符将在后续课程中陆续学习。

  返回值类型:指方法返回值的类型。假如不返回任何值,他应该声明为void类型,Java对待返回值的要求很严格,方法返回值必须与所说明的类型相匹配,使用return返回值。

  <方法名>是定义的方法的名字,它必须使用合法的标识符。

  <参数列表>是传送给方法的参数列表,列表中参数间一哦独好分隔,参数列表的格式如下:

  数据类型  参数1,数据类型  参数2,……数据类型  参数n。你>=0,如果n=0,代表没有参数,这是的方法就是前面学习的无参方法。

2.调用带参方法

  语法:

   对象名.方法(参数1,参数2……参数n)

  在定义方法和调用方法时,把参数分别称为形式参数和实际参数,简称形参和实参。形参是在定义方法时对参数的称呼。用的是定义方法需要传入的参数个数和类型,实参是在调用方法时传送给方法处理的实际的值。

  现实例化对象,在调用方法

  实参的类型数量,顺序都要与形参一一对应

3.为什么要包

  1.包允许将类给合成娇小的单元,(类似文件夹)易于找到和使用相应的类文件。

  2.防止命名冲突;Java只有在不同包中的类名才能重名。

  3.包允许在更广的 范围内保护类,数据和方法,可以在包内定义类。根据规则,保外的代码有可能不能访问类。

public class Method_005 {
    double zje;    //总金额
    String banli;//办理业务方式
    boolean pd;

    public void show(int choice, double money) {
        pd = false;
        if (choice == 1) {
            banli = "存款";
            zje += money;
        } else if (choice == 2) {
            banli = "取款";
            if (zje >= money) {
                zje -= money;//每次减掉取款金额并记录总金额
            } else {
                pd = true;//开关,main方法中会判断一条输出语句
                System.out.println("余额不足!");
            }
        }
    }

    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        Method_005 bdqn = new Method_005();
        int choices = 0;
        do{
            System.out.println("1.存款 2.取款 0.退出");
            System.out.print("请选择你需要办理的业务:");
            choices = input.nextInt();
            if (choices == 1 || choices == 2) {
                bdqn.show(choices, 0);
                System.out.print("请输入" + bdqn.banli + "金额:");
                double quk = input.nextDouble();
                bdqn.show(choices, quk);
                if (bdqn.pd == false) {
                    System.out.println(bdqn.banli + "成功!");
                }
                System.out.println("
***当前余额为:" + bdqn.zje + "***
");
            } else if (choices != 0) {
                System.out.println("命令执行错误!请重新输入!");
            }
        }while (choices != 0) ;
        System.out.println("程序退出!");
    }
}

 常见错误:

//方法定义
public void addNme(String name){
    //方法体
}
//方法调用
对象名.addName(String  "张三");

代码中,调用方法时,在床底的实参前添加数据类型,正确的调用方法如下:
对象名.addName("张三");
//方法定义
public booiean scarchName(int start,int end,String name){
    //方法体
}
//方法调用
String s="开始";
int e=3;
String name="张三";
boolean fiag=对象名.searchName(s,e,name);

代码中,形参和实参的数据类型不一致,searchName()方法定义的形参要求数据类型为int,int,String类型,而实际传递的实参护具类型为String,int,String。
//方法定义
public boolran searchName(int start,int end,String name){
    //方法体
}
//方法调用
int s=1;
int e=3;
boolean fiag=对象名.searchName(s,e);

形参和实参数量不一致。searchName()方法定义了三个形参,而实际传递的实参只有两个。
//方法定义
public boolean searchName(int start,int end,String name){
    //方法体
}
//方法调用
int s=1;
int e=3;
String name="张三";

方法定义有返回值,但是调用该方法后没有对返回值做任何处理。
原文地址:https://www.cnblogs.com/wxl941549541/p/7372045.html