Java基础入门(五)

1 方法的定义和调用

1.1方法的概念和特点

方法(method)是做某件事的固定流程,在程序中是将具有独立功能的代码块组织成一个整体,使其成为具有特殊功能的代码集,当其他的代码需要这段功能时,可以通过这个代码块的“名字”来调用这段代码。

方法的特点:

  1. 流程相对固定;
  2. 可以反复使用;

方法可以代码的复用性。

1.2 方法的定义和调用

1.2.1 定义格式:固定的格式

修饰符 返回值类型 方法名(参数列表){
	方法体;
	return 返回值;
}

方法定义格式的解释说明:

修饰符:固定写法 public static
返回值类型:和返回值的数据类型要保持一致
	1.可以使用任意的数据类型(基本数据类型:48,引用数据类型:数组 int[],double[],String)
	2.使用void,说明这个方法没有返回值
方法名:使用标识符给方法起一个名字(小驼峰式:第二个单词首字母大写),调用方法的时候需要使用,如print,getMax,getSum
参数列表
	1.可以使用任意类型的变量(基本数据类型:48,引用数据类型:数组(int[],double[],String)
	2.什么都不写(),没有参数
方法体:完成方法功能的实际代码
return:
	1.结束方法
	2.如果方法的返回值类型不为void,需要把返回值返回到方法的调用处

1.2.2 方法的调用格式

方法名();

调用打印数字的方法
printNum();

定义打印数字的方法
public static void printNum(){
	int a = 10;
	System.out.println(a);
}

方法名(传递参数);

调用遍历数组的方法
int[] arr = {1,2,3}
printArr(arr)

定义遍历数组的方法
public static void printArr(int[] arr){
    for (int i = 0; i < arr.length; i++) {
       System.out.println(arr[i]);
    }
}

注意:

  • 1.所有的方法都是并列的,不能把一个方法定义在其他方法的内部(类中也需要定义在其他方法外部)
  • 2.方法的定义的先后顺序无所谓,先调用哪个方法,哪个方法就先执行
  • 3.刚开始学习时最好从main方法调用其他方法

1.2.3 方法的参数

前面的内容定义的方法相对比较固定,只能打印固定的信息以及固定的次数;可以让外部“接收数据”,来提高方法的复用性,而这些外部传入的数据被称为参数。

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

  • 形参:定义方法时的数据
  • 实参:方法调用时实际传递的数据
这里的张三就是实参
printStudent("张三");

这里String后面的name就是形参
public static void printStudent(String name){
        System.out.println("姓名:"+name);
 }

方法的参数可以是基本数据类型(4类8种),也可以是引用数据类型(数组等),当方法的参数是数组时,传递的是数组的在堆中的地址值。

方法的参数是数组的内存图:
在这里插入图片描述

1.2.4 方法的返回值

当我们想要通过方法返回我们的值时,就要使用方法的返回值。
方法的定义的时候,要明确:

  • 方法名
  • 参数列表
  • 返回值类型

方法执行的流程图:
在这里插入图片描述

1.2.5 方法的几种调用形式

一般我们现在都是在main方法中调用其他方法,固定的格式: 方法名(参数);

 1.直接调用:适用于没有返回值的方法,方法的返回值类型是void
    方法名(参数);
 2.输出调用:适用于方法有返回值,并且返回值只使用一次
    System.out.println(方法名(参数));
 3.赋值调用:适用于方法有返回值,而且返回值多次使用
    方法的返回值类型 变量名  = 方法名(参数);
    System.out.println(变量名);

2 方法的重载

方法重载:在同一个类中,出现了方法名相同,但是参数列表不同的方法,叫方法重载。

2.1 方法重载的基本使用

方法重载用于定义参数数据类型不同,但方法的代码相同,完成的功能一致的情况,所以这些方法的方法名相同,只有参数列表不同(对应的返回值也不同)。
参数列表不同:

  • 参数个数不同
调用两个int整数求和的方法
int s1 = getSum(10, 20);

调用三个int整数求和的方法
int s2 = getSum(1, 2, 3);
  • 参数类型不同
调用两个int整数求和的方法
int s1 = getSum(10, 20);

调用两个double浮点数求和的方法
double s2 = getSum(5.5, 6.6);
  • 参数类型顺序不同
调用先intdouble变量求和的方法
double s4 = getSum(10, 5.5);
调用先doubleint变量求和的方法
double s5 = getSum(5.5, 100);

2.2 方法重载的注意事项

  • 方法的重载,只和参数类型有关,和方法的返回值类型没有关系
  • 方法的重载,只和参数类型有关,和方法参数的名字没有关系
  • JVM(java虚拟机)会根据方法传递的参数不同,而调用不同的方法

3 基本数据类型和引用数据类型的简单介绍

3.1 基本类型执行参数执行原理

基本类型执行参数执行原理的原理是值传递,方法中把值改变,不影响原来的值。
在这里插入图片描述
注意:不通过参数传递的值在方法中重新赋值,原来的值会被覆盖。

3.2 引用类型执行参数执行原理

引用类型执行参数执行原理是地址值传递,当多个引用变量执行同一个堆内存中的地址值,一个引用变量修改了对象的内容,所有变量访问的内容都会改变。在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值