栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

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

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

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

涉及内容
1. 【理解】什么是方法
2. 【掌握】方法的格式
3. 【理解】方法的执行流程
4. 【理解】方法的重载
5. 【理解】方法参数的传递
一、方法定义
  • 方法就是具有特定独立功能的代码集,方法的使用可以减少代码的冗余、提高代码可复用性、增强代码可维护性可扩展性。
二、方法的格式
  • 方法有以下部分组成
访问修饰符 返回值类型 方法名(参数列表){
    方法体....
	return 返回值;
}
如:
public static int sum(int a,int b){
    int c = a+b;
    return c;
} 
  • 拆解分析 (这里只是会牵涉到关键字,推荐了解杨明金的博客-CSDN博客_java关键字有哪些)
  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

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/328610.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号