0基础学Java(6)(方法【重点】)

方法【重点】

1. 为什么用方法

代码中有可能出现重复功能的代码在不同的位置反复使用,多次出现,如果按照基本的 CV 大法,会导致以下问题:
1. 代码冗余!!!
2. 代码阅读性极差!!!
3. 代码维护性极差!!!

方法可以解决以上问题!!!


#### 2. 比葫芦画瓢 main 方法

```java
public static void main(String[] args) {
	// 方法体
}
/*
public static:
	不要问!!!
	
void:	
	方法返回值类型【核心】
	表示当前方法运行之后,对外的数据返回。
	void 表示当前方法没有返回值

main:
	方法名【伪核心】
	当前方法的名称,要求满足【见名知意,动宾结构】
	main 方法名称是一个特殊名称,JVM会将 main 方法作为程序的入口
	
(形式参数列表):
	形式参数列表【核心】
	当前方法执行所需的外来数据,表明方法所需参数类型,个数和顺序。
总结:
	public static 返回值类型 方法名(形式参数列表) {
		方法体
	}
	
	public static returnType methodName(parameterTypes) {
		method body
	}
	
*/

3. 无参数无返回
3.1 需求

完成方法 功能 展示 hello World

3.2 方法分析:

public static:
不要问!!!固定格式!!!
返回值类型:
当前方法没有返回值 void
方法名:
printHelloWorld
方法名要求,见名知意,动宾结构,小驼峰命名法
形式参数列表:
当前方法运行无需任何外来数据,没有参数!!!
()

3.3 方法声明
public static void printHelloWorld();
3.4 方法实现和调用
/*
无参数无返回值方法演示
	1. 自定义方法和main方法平级,在 class 大括号以内,其他方法大括号之外 
	2. 方法在完成代码之前,首先标注完整的文档注释
	3. 方法是条狗,哪里需要哪里吼,吼【方法名】
	4. 方法和变量的最大区别,方法名后面有小括号。首字母小写标识符,有小括号为方法,无小括号为变量
	5. 方法无参数,小括号无任何内容
 */
class Method1 {
	public static void main(String[] args) {
		printHelloWorld();
		printHelloWorld();
		printHelloWorld();
		printHelloWorld();
		printHelloWorl();
	}
	
	/**
	* 展示 hello world
	*/
	public static void printHelloWorld() {
		System.out.println("烤羊排!!!");
	}
}
3.5 无参数无返回方法执行流程请添加图片描述
4. 有参数无返回
4.1 需求

展示用户提供的 int 类型数据内容

4.2 方法分析

public static:
不要问!!!固定格式!!!
返回值类型:
方法为展示方法,没有返回值
void
方法名:
见名知意,动宾结构,小驼峰命名法
printIntValue
形式参数列表:
当前方法需要展示的 int 类型数据是由用户提供的!!!当前方法有参数
(int num)
int 表示参数数据类型为 int 类型
num 是参数变量,也可以认为是方法内部的【局部变量】,可以在方法中直接使用

4.3 方法声明
public static void printIntValue(int num);
4.4 方法实现
/*
有参数无返回值方法
	1. 文档注释中 @param 是参数解释,需要对应参数名和解释内容
		例如 @param num 用户提供的 int 类型数据
	2. 一个方法有参数,需要按照当前方法参数数据类型,提供对应的
	【实际参数】
*/
class Method2 {
	public static void main(String[] args) {
		// 调用方法,所需参数为 int 类型,给予 实际参数 100 符合数据类型要求
		printIntValue(100);
		/*
		Method2.java:16: 错误: 不兼容的类型: 从double转换到int可能会有损失
                printIntValue(5.5);
		*/
		// printIntValue(5.5);
	
	}
	
	/**
	* 展示用户提供的 int 类型数据
	*
	* @param num 用户提供的 int 类型数据
	*/
	public static void printIntValue(int num) {
		System.out.println("用户提供的数据为:" + num);
	}
} 
4.5 执行流程图

请添加图片描述

5. 无参数有返回
5.1 需求

给我一个 5

5.2 方法分析

public static:
不要问!!!固定格式!!!
返回值类型:
返回值内容为 整数 5 为 int 类型
返回值类型为 int 类型
方法名:
见名知意,动宾结构,小驼峰命名法
giveMeFive
形式参数列表:
方法执行无需外来数据,没有参数
()

5.3 方法声明
public static int giveMeFive();
5.4 方法实现
/*
无参数有返回值方法
	1. @return 是用于描述带有返回值方法的返回内容解释
		解释返回值情况,状态,对应的效果
*/
class Method3 {
	public static void main(String[] args) {
		int num = 0;
		
		System.out.println("未调用方法:" + num);
		// 利用 giveMeFive 方法返回值给予 num 进行赋值操作
		num = giveMeFive();
		
		System.out.println("调用方法之后:" + num);
	}
	
	/**
	* 返回整数数据 5
	*
	* @return 返回一个整数 int 类型的数值 5
	*/
	public static int giveMeFive() {
		/*
		return 关键字
			1. 返回 return 之后的数据
			2. 终止当前方法的运行
				return; 适用于无返回值方法(void),终止方法运行。
		*/
		return 5;
	}
}
5.5 执行流程图

请添加图片描述

6. 有参数有返回
6.1 需求

计算两个整数之和,通过方法返回值返回

6.2 方法分析

public static:
不要问!!!固定格式!!!
返回值类型:
两个整数相加,结果依然是 整数
int
方法名:
见名知意,动宾结构,小驼峰命名法
getSumOfTwoNumber
形式参数列表:
要求用户提供的两个 int 类型
(int num1, int num2)
方法所需参数为多个参数,需要按照参数数据类型1 参数名1, 参数数据类型2 参数名2

6.3 方法声明
public static int getSumOfTwoNumber(int num1, int num2);
6.4 方法实现
/*
有参数有返回值方法
	1. 给予方法实际参数,要求和形式参数列表数据类型,参数个数,参数顺序
	完全一致
	2. 方法数据返回和方法内部执行数据展示操作完全不同。
 */
class Method4 {
	public static void main(String[] args) {
		int sum = 0;
		
		System.out.println("方法调用之前:" + sum);
		
		// 给予方法实际参数 10, 20 将方法的返回值内容赋值给变量sum
		sum = getSumOfTwoNumber(10, 20);
		
		System.out.println("方法调用之后:" + sum);	
	}
	
	/**
	* 计算用户提供的两个整数之和,通过方法返回值返回给用户
	* 
	* @param num1 用户提供的 int 类型数据
	* @param num2 用户提供的 int 类型数据
	* @return 两个 int 类型数据之和
	*/
	public static int getSumOfTwoNumber(int num1, int num2) {
		System.out.println("方法调用之后:" + (num1 + num2));	
		return num1 + num2;
	}
}

6.5 执行流程图
请添加图片描述

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值