笨方法学 Java -08-方法的定义与实现
作者:谎言诞行    发布时间:2024年01月08日

0、前言

通过前面几篇文章的学习,想必大家已经对于Java中的方法(Method)有初步的了解。方法,其实就是关于类本身的一些功能封装。比如:main方法就是关于程序入口的功能封装。下面,我们将系统的介绍关于Java方法的一些内容。


1、方法的整体形式

样例代码如下:

/**
 * 该方法用于查找整形数组 numArray, 是否包含整数 targetNumber
 * @param numArray 查找的对象
 * @param targetNumber 查找的目标数值
 * @return 查找到了,返回 true;否则返回 false。
 */
public static boolean containTargetNumber(int[] numArray, int targetNumber) {
    //定义返回结果变量
    boolean result = false;
    //判断numArray是否有效。引用类型的值可能为 null值,无法继续处理。
    if(numArray!=null) {
       //循环遍历
       for(int num: numArray) {
           if(num==targetNumber) {
              //找到匹配值就赋值,并跳出循环。
              result = true;
              break;
           }
       }
    }
    return result;
}

下图是一个完整的功能方法:

image.png

程序内容解析如下:

  • 第1点:这块蓝色的内容,是Java方法的注释。这种写法可用于生成代码说明文档,Java doc。如下图:

image.png

  • 第2点:public 是该方法的作用域信息。可参考《笨方法学 Java -05-语法-变量、常量、赋值》中的作用域说明。

  • 第3点:static 表示该方法是静态方法。如果不写,则为普通方法。具体在第2节展开讨论。

  • 第4点:boolean 是这个方法的返回值。表示这个方法在执行完毕,会返回一个boolean类型的结果。如果设计上是没有返回值的话,写void

  • 第5点:containTargetNumber是方法的名称。方法名称的首字母要小写。

  • 第6点:int[] numArray, int targetNumber 这2个是方法的入口参数。格式为:“数据类型 参数名”,如果有多个,则以英文逗号“,”分割开来,参数名首字母要小写。另外,要注意的一点,方法的入口参数,只是一个替换符,仅方法内有效。

  • 第7点:return result是方法的返回语句。如果方法有返回值,则需要用return 语句返回一个对应类型的结果。


2、静态方法和普通方法

在Java中,资源的类型大体上可以分为静态资源、动态资源。静态资源使用 static 标记。在引用划分上,静态资源属于类,动态资源属于对象。意思就是,静态资源可以通过类名直接引用;动态资源需要创建该类的对象,然后通过对象引用。如下图:

image.png


3、方法的重载(Overload)

方法的重载这个名词,看起来有点不知所云。其实就是允许同一个类中的方法可以同名,但是入口参数不同。Java中的这个概念,对于写代码很方便。示例如下:

源代码:(增加一个方法)

public static boolean containTargetNumber(float[] numArray, float targetNumber) {
    //定义返回结果变量
    boolean result = false;
    //判断numArray是否有效。引用类型的值可能为 null值,无法继续处理。
    if(numArray!=null) {
       //循环遍历
       for(float num: numArray) {
           if(num==targetNumber) {
              //找到匹配值就赋值,并跳出循环。
              result = true;
              break;
           }
       }
    }
    return result;
}

image.png

 

注意:float类型的数据,需要带 f 结尾。

 

本章节结束

填写一种颜色的字符(不区分大小写),1分钟有效,点击图片刷新