八、方法(Method)(1)

(一)方法概念

        方法是一段封装了特定功能的可重用的代码块,用于执行特定任务并返回结果(也可以不返回结果)。通俗地说,Java中的方法就是一个代码块,类似于C语言中的函数。

        关于方法的作用及意义(理解即可):

①模块化程序结构。当代码比较复杂或者代码体量较大时,能够模块化的组织代码。

②提高代码复用性。就是说一份代码可以在多个位置重复使用。

③简化调试和维护。

(二)方法定义

语法格式:

        [访问修饰符] [其他修饰符] 返回值类型 方法名 (参数列表){
            // 方法体代码
            [return 返回值;] // 若返回值类型非void则必须存在
        }

组成部分说明:

访问修饰符:控制方法的访问权限,如public、private、protected(默认包级私有)。

其他修饰符:如static(静态方法)、final(不可覆盖)、abstract(抽象方法)。

返回值类型:方法返回值的数据类型。无返回值时用void,注意:若返回值类型不是void时,必须要有返回值。

方法名:就是方法名称,建议遵循小驼峰命名法(首字母小写,后边每一个单词首字母大写),应当具有描述性,有意义。

参数列表:输入的参数(形参)的声明,格式为:类型 参数名,有多个参数时,用   ,(逗号)分隔。允许没有参数,若方法没有参数,()中什么也不写。

方法体:实现功能的代码块,即方法内部要执行的语句。

返回值:与返回值类型相匹配,通过return语句返回。

例:定义一个方法:实现两个整数相加

        public static int add(int a, int b) {
            return a + b;
        }

tips:

初学Java直接使用public static固定搭配,且建议按照方法定义的语法格式写全,即定义方法时带着public static。

注意:

①Java中,方法必须写在类中。如下图所示,add方法写在了JavaMethod类中。

②Java中,方法不允许嵌套定义。

③Java中,不存在方法声明这一说法。(要与C语言中函数声明区分)

(三)方法调用

方法调用过程:

调用方法 --> 传递参数 -->  执行被调方法的方法体 --> 被调方法结束并返回 --> 回到主调方法继续往下执行代码

例:计算两个整数相加

public class JavaMethod {
    //定义一个方法:实现两个整数相加
    public static int add(int a, int b) {
        return a + b;
    }


    public static void main(String[] args) {
        int num1 = 10;
        int num2 = 20;
        int ret = add (num1,num2);
        System.out.println(ret); // 输出结果:30
    }
}

步骤:

① add (num1,num2) 调用add方法;

② 将实参num1,num2传送给add方法的形参a,b;

③ 执行方法体 a+b 并且返回 a+b 的值;

④ 执行结束带着 a+b 的值,即30;

⑤ 回到主调方法,将30赋值给ret,然后继续向下执行。

注意:

①定义方法的时候,不会执行方法的代码,只有调用方法的时候才会执行。

②一个方法可以被多次调用。

方法的调用:

1.静态方法的调用

通过类名直接调用:

int result = Math.max(5, 10); // 调用Math类的静态方法


class Math {
    public static int max (int a,int b) {
        if (a < b) {
            return b;
        }else {
            return a;
        }
    }
}

2.实例方法调用 

通过对象实例调用:

String str = "Hello";
int length = str.length(); // 调用String对象的实例方法

3.方法嵌套调用 

方法返回值可以作为其他方法的参数:

System.out.println(add(2, 3)); // 输出:5

(四)方法参数与返回值

1.参数传递机制

值传递:Java中所有参数均为值传递。

(1)基本类型:相当于传递值的副本,方法内修改,不改变值的原始值。

(2)引用类型:传递引用的副本,方法内修改对象属性会影响原对象。

(关于形参和实参,请参考博客:九、形参(形式参数)与实参(实际参数))

2.返回值

(1)方法的返回值是可以选择有没有的。若返回值类型不是void,必须使用return语句返回与之类型相匹配的值。没有返回值时,类型必须写成void。

(2)return语句终止方法执行,后续代码不会运行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

圆响石

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值