JAVA方法

JAVA方法

  • 1.引入方法
    • 1.1 方法的定义
    • 1.2 方法调用的执行过程
    • 1.3 形参和实参的关系
  • 2.方法重载
  • 3. 递归
    • 3.1 递归的含义
    • 3.2 递归的执行流程

1.引入方法

方法就是一个代码片段. 类似于 C 语言中的 “函数”,方法有许多好处:

  1. 当代码规模比较复杂的时候,能够模块化的组织代码.
  2. 做到代码被重复使用, 一份代码可以在多个位置使用.
  3. 让代码更好理解更简单.
  4. 直接调用现有方法开发, 不必重复造轮子

1.1 方法的定义

	修饰符 返回值类型 方法名称([参数类型 形参 ...]){
	方法体代码;
	[return 返回值];
	}

比如要实现一个两个整数相加的方法

	// 方法的定义
	//修饰符是public,返回值类型int,方法名称add,参数类型是int,int ,方法体代码是return x+y
	
	public static int add(int x, int y) {
	return x + y;
		}

  注意事项:

  1.修饰符:现阶段直接使用public static 固定搭配

  2. 返回值类型:如果方法有返回值,返回值类型必须要与返回的实体类型一致,如果没有返回值,必须写成 void

  3. 方法名字:采用小驼峰命名

  4. 参数列表:如果方法没有参数,()中什么都不写,如果有参数,需指定参数类型,多个参数之间使用逗号隔开

  5. 在java当中,方法必须写在类当中

  6.在java当中,方法不能嵌套定义

  7.方法不用写在main函数之前,写在main之后也可以,但一定要写在类里面.

1.2 方法调用的执行过程

JAVA方法_第1张图片

1.3 形参和实参的关系

  java中方法的形参就相当于下图代码中的自变量N,用来接收函数在调用时传递的值的。形参的名字可以随意取,对方法都没有任何影响,形参只是方法在定义时需要借助的一个变量,用来保存方法在调用时传递过来的值.

public static int getSum(int N){ // N是形参
	return (1+N)*N / 2;
} 
getSum(10); // 10是实参,在方法调用时,形参N用来保存10
getSum(100); // 100是实参,在方法调用时,形参N用来保存100

2.方法重载

在Java中,如果多个方法的名字相同,参数列表不同,则称该几种方法被重载了

public class TestMethod {
	public static void main(String[] args) {
		add(1, 2); // 调用add(int, int)
		add(1.5, 2.5); // 调用add(double, double)
		add(1.5, 2.5, 3.5); // 调用add(double, double, double)
	}
	public static int add(int x, int y) {
		return x + y;
	public static double add(double x, double y) {
		return x + y;
}
	public static double add(double x, double y, double z) {
		return x + y + z;
		}
	}
}

  方法重载注意事项:

  1. 方法名必须相同

  2. 参数列表必须不同(参数的个数不同、参数的类型不同、类型的次序必须不同)

  3. 与返回值类型是否相同无关

//下面的代码就无法构成重载,因为重载与返回值类型无关,写了两个相同的函数

public static int add(int x, int y) {
	return x + y;
	}
public static double add(int x, int y) {
	return x + y;
	}
}

3. 递归

3.1 递归的含义

  递归就是自己中又包含了自己,需要将原问题拆分成其子问题之后,子问题与原问题有相同的解法,等子问题解决之后,原问题就迎刃而解了.

3.2 递归的执行流程

比如我们要求一个数的阶乘

public static int factor(int n){
	if (n == 1) {
	return 1;
} 
	int ret = n * factor(n - 1);
	return ret;
}
public static void main(String[] args) {
int n = 3;
int ret = factor(n);
System.out.println("ret = " + ret);
}

JAVA方法_第2张图片

你可能感兴趣的:(JAVASE,java,jvm,servlet)