第十五天的学习--方法(形参、实参、调用、重载、命令行传参、可变参数)

第十五天的学习

Java的方法

定义

Java的方法类似于其他语言的函数,是一段用来完成特定功能的代码片段,一般情况下,定义一个方法包含以下语法:

方法包含一个方法头和一个方法体。下面是方法的所有部分:

方法的语法

修饰符:这是可选的,告诉编译器如何调用该方法,定义该方法的访问类型。

返回值类型:方法可能会返回值。returnValueType是方法返回值的数据类型。有些方法执行着所需要的操作,但没有返回值,在这种情况下,returnValueType是关键字void,代表着空。

方法名:是方法的实际名称。方法名和参数表共同构成方法签名。

参数类型:参数像是一个占位符,当方法被调用时,传递值给参数。这个值被称为实参或变量。参数列表是指方法的参数类型、顺序和参数的个数。参数是可选的,方法可以不包含任何参数。

参数分为形式参数实际参数两种:

形式参数在方法被调用时用于接收外界输入的数据,也就是一个空壳,被调用的时候赋值进去。只是起到一个定义作用,就相当于数学函数里的xy,ab。

实际参数就是在调用方法时实际传给方法的数据。就相当于给xy,ab赋的那个值。

方法体:方法体包含具体的语句,定义该方法的功能。

如果方法需要返回一个值,那么就必须要用return把值返回来。return还有一个功能,就是中止方法,可以用它来中断一些操作。

示例

下面是一个比大小的示例:

比大小

接着去main方法里引用:

比大小引用

数字具体是多少那就看自己的需求了。

方法的调用

调用方法:对象名.方法名(实参列表)

Java支持两种调用方法的方式,根据方法是否返回值来选择。

  1. 当方法返回一个值的时候,方法调用通常被当做一个值。就跟上文中比大小的那个max(1,1)一样,这是调用方法,也被当做一个值来用。
  2. 如果方法返回值是void,那方法调用一定是一条语句。这个时候直接用就行,直接输出或者什么别的都可以。

Java都是值传递。

方法的重载

重载是在一个类中,有相同的函数名称,但形参不同的函数。

重载

最重要的是规则的前两点,只要满足就是方法的重载。

下面是示例:

重载示例1

重载示例2

有区别的地方已经标记出来了,其他的都是一样的。

命令行传参

有时候你希望在程序运行的时候给它传递消息,这就需要传递命令行参数给main()函数实现。

语法:

命令行传参语法

这个可以在cmd里面操作,在里面输入值,然后回车就可以输出了。

  • 首先我们需要打开cmd,这个很简单,打开Demo03的地址,然后加cmd空格,再回车即可。
  • 再然后生成一个class文件,这里要注意可能会乱码,记得编码一下。
  • 随后一步一步退回到src这个文件夹处,直接执行Demo03是会报错的。
  • 接着输入Demo03在包里的位置,这时候直接回车是没反应的,因为我们还没有输入一些值。
  • 这里我们输入一下this is me。
  • 就可以看到成果了。

cmd

可变参数

从JDK1.5开始,Java支持传递同类型的可变参数给一个方法。适用于参数个数不确定,类型确定的情况,java把可变参数当做数组处理。

在方法声明中,在指定参数类型后加三个点...如下图:

可变参数示例

一个方法中只能指定一个可变参数,它必须是方法的最后一个参数,任何普通的参数必须在它之前声明。

示例:

下面这个是一个把数字排序,然后输出最大值的代码:

可变参数

下面是我敲的,顺便带上了自己的理解:

可变参数示例2

调用方法的时候,可以直接输入一个一个的数字来赋值,也可以新建一个数组,这样还挺灵活的。

以上所有学到的知识,除小部分我自行百度外,其余全是从B站UP遇见狂神说那里学习得来的。
非常良心的一位UP,Java课程全部免费,大家快去关注他!!!
对了,他还自建了一个学习网站,课程全部免费,链接就在这里,一起来学习吧!!!https://www.kuangstudy.com/

posted @ 2021-02-15 19:17  夏陌夏  阅读(129)  评论(0)    收藏  举报