Java零基础精通方法篇

 更新时间:2022年05月10日 15:24:11   作者:知心宝贝  
方法,也称函数,如果想要重复一段或者多段代码块的使用,可以将这些代码封装成一个方法,方法具体表现为某种行为,使用方法可以提高代码的复用性

一、前言

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

二、定义与调用

1.概述

  • 定义:方法是一种语法结构,把一段代码封装成一个功能,方便重复调用
  • 分类:一般分为参数(带/不带)、返回值(有/无)
  • 好处:提高代码复用性、逻辑更加清晰

2.格式

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

范例:

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

四、方法调用的内存图

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

五、重载

1.概述

定义:同一个类中,出现多个方法名称相同,但是形参列表不同(类型不同或数量不同),与返回值无关

例如下面几个例子,判断是否为方法重载?

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

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零基础精通方法篇的文章就介绍到这了,更多相关Java方法内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java中Dom4j的配置与使用示例详解

    Java中Dom4j的配置与使用示例详解

    Dom4j是一个强大的Java库,用于处理XML数据,结合了DOM、SAX、JDOM的优点,它可以解析、生成、修改和序列化XML文档,适用于数据交换、配置文件管理、日志记录、数据持久化和Web服务等场景,Dom4j提供了简单易用的API,便于开发者进行高效的XML操作
    2024-10-10
  • 一篇文章带你了解JAVA面对对象三大特征之封装

    一篇文章带你了解JAVA面对对象三大特征之封装

    所有的面向对象编程语言的思路都是差不多的,而这三大特性,则是思路中的支柱点,接下来我就重点讲解了一下java三大特性-封装,感兴趣的朋友跟随脚本之家小编一起看看吧
    2021-08-08
  • 学习Spring-Session+Redis实现session共享的方法

    学习Spring-Session+Redis实现session共享的方法

    本篇文章主要介绍了学习Spring-Session+Redis实现session共享的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-05-05
  • 一个简单的SpringBoot项目快速搭建详细步骤

    一个简单的SpringBoot项目快速搭建详细步骤

    Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程,下面这篇文章主要给大家介绍了一个简单的SpringBoot项目快速搭建详细步骤,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-08-08
  • Java 互相关联的实体无限递归问题的解决

    Java 互相关联的实体无限递归问题的解决

    这篇文章主要介绍了Java 互相关联的实体无限递归问题的解决,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-10-10
  • 浅谈JAVA设计模式之享元模式

    浅谈JAVA设计模式之享元模式

    这篇文章主要介绍了JAVA设计模式之享元模式的的相关资料,文中详细的介绍了享元模式的概念以及使用方法,感兴趣的朋友可以了解下
    2020-06-06
  • IDEA 使用 SpotBugs 找出你代码中的bug问题

    IDEA 使用 SpotBugs 找出你代码中的bug问题

    这篇文章主要介绍了IDEA 使用 SpotBugs 找出你代码中的bug问题,重点给大家介绍SpotBugs 在 idea 中的安装和使用,感兴趣的朋友跟随小编一起看看吧
    2021-07-07
  • springboot模块里面调用另外一个模块的方法实现

    springboot模块里面调用另外一个模块的方法实现

    在Spring-Boot项目开发中,存在着本模块的代码需要访问外面模块接口,本文就来介绍一下springboot模块里面调用另外一个模块的方法实现,感兴趣的可以了解一下
    2023-11-11
  • Java中类的加载顺序执行结果

    Java中类的加载顺序执行结果

    这篇文章主要介绍了Java中类的加载顺序执行结果的相关资料,需要的朋友可以参考下
    2017-10-10
  • java设计模式Ctrl C和Ctrl V的原型模式详解

    java设计模式Ctrl C和Ctrl V的原型模式详解

    这篇文章主要为大家介绍了java设计模式Ctrl C和Ctrl V的原型模式详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-02-02

最新评论