Java零基础精通方法篇

作者:知心宝贝 时间:2021-08-29 12:07:58 

一、前言

  • 学习概述:学习四种不同类型的方法应用、方法被调用时的内存图、重载

  • 学习目标:熟练掌握方法的应用以及重载

二、定义与调用

1.概述

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

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

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

2.格式

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

范例:

Java零基础精通方法篇

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零基础精通方法篇

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

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

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

五、重载

1.概述

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

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

Java零基础精通方法篇

  • 第一个不是,与返回值无关

  • 第二个是,形参数量不同

  • 第三个是,形参定义类型不同

  • 第四个不是,不在同一个类中

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.总结

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

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

来源:https://blog.csdn.net/qq_53673551/article/details/124675785

标签:Java,方法
0
投稿

猜你喜欢

  • Java全排列算法字典序下的下一个排列讲解

    2023-07-30 17:44:39
  • Java利用MultipartFile实现上传多份文件的代码

    2023-11-25 11:29:13
  • 简单分析Java的求值策略原理

    2022-03-22 19:14:00
  • Java递归来实现汉诺塔游戏,注释详细

    2023-07-05 10:33:52
  • Java生成10个1000以内的随机数并用消息框显示数组内容然后求和输出

    2023-09-30 21:20:19
  • Java日常练习题,每天进步一点点(46)

    2023-10-05 11:20:29
  • Android实现记事本功能(26)

    2023-02-17 22:30:23
  • c#利用Excel直接读取数据到DataGridView

    2023-02-22 13:39:07
  • Eclipse快速添加get、set方法的操作技巧

    2022-11-20 04:11:59
  • C# 函数返回多个值的方法详情

    2022-01-05 05:47:11
  • 利用Java理解sql的语法(实例讲解)

    2023-02-16 06:18:06
  • Android提高之ListView实现自适应表格的方法

    2023-04-05 17:25:09
  • SpringBoot通过自定义注解实现参数校验

    2023-09-21 21:11:02
  • java编码IDEA主题推荐

    2021-10-21 03:54:18
  • 实例讲解Java 自旋锁

    2021-09-17 09:38:50
  • 源码剖析Android中Okio的使用

    2023-07-03 20:48:44
  • Spring Boot CLI使用教程

    2023-03-30 03:37:02
  • SpringData如何通过@Query注解支持JPA语句和原生SQL语句

    2022-08-26 22:07:29
  • JAVA的Random类的用法详解

    2022-07-22 00:05:58
  • hadoop运行java程序(jar包)并运行时动态指定参数

    2023-07-27 11:02:10
  • asp之家 软件编程 m.aspxhome.com