IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> Java100天编程指南---第10天:方法 -> 正文阅读

[Java知识库]Java100天编程指南---第10天:方法

4c27eca56b3d45c78df643ed1797cbd0.gif


目录

一、前言

二、定义与调用

1.概述

2.格式

3.调用

4.注意

三、范例

1. 例题 1

?2. 例题 2

? 3. 例题 3

四、方法调用的内存图

五、重载

1.概述

2. 例题

3.总结


一、前言

  • 学习概述:学习四种不同类型的方法应用、方法被调用时的内存图、重载
  • 学习目标:熟练掌握方法的应用以及重载

二、定义与调用

1.概述

  • 定义:方法是一种语法结构,把一段代码封装成一个功能,方便重复调用

  • 分类:一般分为参数(带/不带)、返回值(有/无)

  • 好处:提高代码复用性、逻辑更加清晰

2.格式

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

范例:

a4c726ba6a494c6f9816534b9dbc9dbe.png

3.调用

  • 方法必须通过程序调用 才能运行,调用格式如下:

方法名(…);

范例:

int sum = add(10, 20);
System.out.println(sum);

4.注意

  • 修饰符:目前暂时使用public static 修饰

  • 形参:可以没有,但有多个需要逗号分隔,调用时需要传入对应类型的变量值

  • 返回值:如果方法定义了返回类型,方法内部的代码段一定要体现。如果方法不需要返回结果,返回值类型必须申明成?void(无返回值)

三、范例

1. 例题 1

  • 设计一个方法(无参、无返回值)用于打印两个数字的大小关系

?编码实现:?

public static void main(String[] args) 
{
	getRelation();//调用方法
}
public static void getRelation()
{
	int a=10;
	int b=20;
	if(a>b)
	{
		System.out.println("a大于b");
	}
	else if(a<b)
	{
		System.out.println("a小于b");
	}
	else
	{
		System.out.println("a等于b");
	}
}

输出结果

a小于b

?2. 例题 2

  • 设计一个方法(有参、无返回值)用于打印两个数字的最大值

?编码实现:?

public static void main(String[] args) 
{
	
	getMax(10,20);//调用方法
}
public static void getMax(int a,int b)//带参无返回值
{
	if(a>b)
	{
		System.out.println(a);
	}
	else
	{
		System.out.println(b);
	}
}

输出结果

20

? 3. 例题 3

  • 设计一个方法(有参、有返回值 int 型)用于打印两个数字的最大值

?编码实现:?

public static void main(String[] args) 
{
	System.out.println(getMax(10,20));//调用方法
}
public static int getMax(int a,int b)//带参无返回值
{
	if(a>b)
	{
		return a;
	}
	else
	{
		return b;
	}
}

输出结果

20

四、方法调用的内存图

fcfb867dcf694cb1b00e16445818dce6.png

  • 方法未被调用,在方法区中的字节码文件中存放

  • 方法调用,进入到栈内存中运行

  • java程序编译生成class字节码文件,方法区存入main方法、eat、study、eat方法。进入主函数调用,在栈内存运行输出结果。

五、重载

1.概述

  • 定义:同一个类中,出现多个方法名称相同,但是形参列表不同(类型不同或数量不同),与返回值无关
  • 例如下面几个例子,判断是否为方法重载?

1f2e4e3014e04350bf1865d4b9309664.png

  • 第一个不是,与返回值无关
  • 第二个是,形参数量不同
  • 第三个是,形参定义类型不同
  • 第四个不是,不在同一个类中?

2. 例题

  • 构造三个重载的方法,分别实现两个int型整数相加的和、两个double类型数据相加的和、三个int类型数据相加的和

??编码实现:?

public static void main(String[] args)
{
	int result=sum(10,20);
	System.out.println(result);
	
	double result1=sum(10.0, 20.0);
	System.out.println(result1);
	
	int result2=sum(10, 20,30);
	System.out.println(result2);
	
}
public static int sum(int a,int b)
{
	return a+b;
}
public static double sum (double a,double b)
{
	return a+b;
}
public static int sum(int a,int b,int c)
{
	return a+b+c;
}

输出结果

30
30.0
60

3.总结

  • 重载可读性好,方法名称相同是同一类型的功能,但通过形参不同实现功能差异化的选择

  • 形参列表不同:形参的个数、类型、顺序不同,不关心形参的名称

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2022-05-12 16:20:26  更:2022-05-12 16:20:39 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 23:37:32-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码