Java基础笔记005--方法知识

在这里插入图片描述

涉及内容

1. 【理解】什么是方法
2. 【掌握】方法的格式
3. 【理解】方法的执行流程
4. 【理解】方法的重载
5. 【理解】方法参数的传递

一、方法定义

  • 方法就是具有特定独立功能的代码集,方法的使用可以减少代码的冗余、提高代码可复用性、增强代码可维护性可扩展性。

二、方法的格式

  • 方法有以下部分组成
访问修饰符 返回值类型 方法名(参数列表){
    方法体....
	return 返回值;
}
如:
public static int sum(int a,int b){
    int c = a+b;
    return c;
} 
  1. 访问权限修饰符,主要限制该方法的被访问权限大小
  2. 返回值类型,可以是基本数据类型、引用数据类型(包括自定义类),当返回值类型为void时,表示没有返回值,可省略return
  3. 方法名,就是标识符,尽量满足见名知意+驼峰命名法
  4. 参数列表,可以有0~无穷个参数,中间用逗号隔开即可
  5. 方法体,根据方法要实现的功能具体编写,除返回值类型为void外,必须有*return 返回值;*语句
  • 注意
  1. 方法定义的位置:类里面,且方法不能嵌套定义
  2. return 后跟的返回值,一般叫做方法返回值
  3. 方法参数列表中声明的变量叫做:形式参数;调用方法时使用的参数叫做:实际参数

三、方法的重载

  • 同一类中、父子类中 定义方法可以重载,重载使用情况往往是实现功能相同,参数类似的方法。
  • 判断重载的规则:方法名相同 + 参数列表不同(二者同时成立时才是重载,与方法其他部分没关系)
  • 参数列表不同分为三种:
    1. 参数个数不同
    2. 参数个数相同,参数类型不同
    3. 参数个数相同,参数类型顺序不同
1.public void add(){}
2.public static String add(){}
3.public String add(int a,char b){}
4.void sum(){}
5.void add(char a,int b){}

//与1属于重载的有:3、5

四、方法参数

  • 对于方法参数列表中的基本数据类型变量(形式参数),因为基本数据类型变量存放的是常量池中的常量的地址值, 调用方法是只是将实际参数的值赋值给了形式参数,任形式参数随意改变,并不会改变实际参数对应变量存储的地址值
int i = 0;
add(i);

public void add(int a){
    a = 3;
}

//调用完add方法后,i的值不会改变
  • 对于方法参数列表中的引用数据类型变量(形式参数),这个存储知识是牵涉栈、堆、常量池,数组在jvm中的存储结构知识提到过,其他引用数据类型变量存储类似数组数组jvm存储结构。调用方法是传递的是栈中变量名存储的地址(对应堆中存储内容地址),所以形式参数改变时,改变的就是地址,这里将导致实际参数对应变量存放的地址也发生改变。
int[] arr = new int[9];
a(arr);
//调用方法后,原数组中a[0]的值也会改变

b(arr);![在这里插入图片描述](https://img-blog.csdnimg.cn/ccf9e4b385e84fabb712c517ee492db2.gif)


//执行该方法后,原数组指向的堆中存储区块地址发生改变,对于对象引用变量,表示其指向的堆中对
//象地址发生改变。

public void a(int[] ar){
    ar[0] = 1;
}
public void b(int ar){
    int[] array = {0,9,8,7};
    ar = array;
}

java基础笔记004

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值