当前位置: 首页 > news >正文

【Java】方法

在 Java 里,方法(method)是一组执行特定任务的语句集合,是程序中最小的执行单元,能提升代码的复用性与可维护性。下面从方法的定义、调用、参数、返回值、重载等方面进行总结。

一、方法的定义

方法定义包含方法头和方法体两部分,语法格式如下:

修饰符 返回值类型 方法名(参数列表) {
    // 方法体
    语句;
    return 返回值; // 如果返回值类型不是 void
}
  • 修饰符:可选,用于定义方法的访问权限、静态性等,像 publicprivatestatic 等。
  • 返回值类型:表明方法执行后返回结果的类型,若不返回任何值,使用 void
  • 方法名:是方法的标识符,要遵循 Java 的命名规范。
  • 参数列表:是传递给方法的参数,多个参数用逗号分隔。
  • 方法体:是实现方法功能的语句块。

无参数方法定义和调用

定义格式:

public static void 方法名 (   ) {
    // 方法体;
}
例如:
public static void method (    ) {
    // 方法体;
}

调用方法:

method();

完整代码演示: 

package com.hongwu.methoddemo;

public class methodemo1 {
    public static void main(String[] args) {
         playgame();
    }
    public static void playgame(){
        System.out.println("123");
        System.out.println("123");
        System.out.println("123");
        System.out.println("123");
    }
}

带参数方法定义和调用

 定义格式:

public static void 方法名 (参数1, 参数2, 参数3...) {
	方法体;
}

例如:
public static void getsum(int num1,int num2){
        int result=num1+num2;
        System.out.println(result);
    }

 放到完整程序里面看一下:

 

  • 实参:是调用方法时实际传递的具体值,在 main 方法中调用 getsum 方法时,a 和 b 是实参。
  • 形参:是方法定义时声明的参数,用于接收实参传递的值,在 getsum 方法定义中,num1 和 num2 是形参。

当 getsum 方法被调用时,实参的值会传递给形参,从而在 getsum 方法内部可以使用这些值进行计算。

带返回值方法定义和调用

定义格式:

public static 数据类型 方法名 ( 参数 ) { 
	return 数据 ;
}

例如:
public class methodtest1 {
    public static void main(String[] args) {
        getsum(10,20,30);

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

        System.out.println(getsum(10,20,30));
    }
    public static int getsum(int num1,int num2,int num3){
        int result = num1+num2+num3;
        return result;
    }
}

调用方式:

//直接调用        
      getsum(10,20,30);
//赋值调用
      int sum =getsum(10,20,30);
      System.out.println(sum);
//输出调用
      System.out.println(getsum(10,20,30));

注意事项

  • 方法不调用就不执行
  • 方法与方法之间是平级关系,不能互相嵌套定义
  • 方法的编写顺序和执行顺序无关
  • 方法的返回值类型为void,表示该方法没有返回值,没有返回值的方法可以省略return语句不写。如果要编写return,后面不能跟具体的数据。
  • return语句下面,不能编写代码,因为永远执行不到,属于无效的代码

二、方法的重载

方法重载指的是在一个类中可以定义多个同名方法,但这些方法的参数列表不同(参数个数、参数类型或参数顺序不同)。方法重载能让代码更具可读性和灵活性。

例子:使用方法重载的思想,设计比较两个整数是否相同的方法,兼容多种数据类型。

public class methodemo2 {
    public static void main(String[] args) {
       // compare(10,20);
        compare(1.2,3.3);

    }
    public static void compare(double d1,double d2){
        System.out.println(d1==d2);
    }
    public static void compare(int n1,int n2){
        System.out.println(n1==n2);
    }
    public static void compare(short s1,short s2){
        System.out.println(s1==s2);
    }
    public static void compare(long g1,long g2){
        System.out.println(g1==g2);
    }
    
}

相关文章:

  • ElasticSearch 7.x 集群 + Kibana 部署完全指南(5节点)
  • 【无标题】RegisterClassObjects
  • 全方位对比oracle18c和oracle 19c
  • 使用码云搭建CocoaPods远程私有库
  • java面试题,什么是动态代理?、动态代理和静态代理有什么区别?说一下反射机制?JDK Proxy 和 CGLib 有什么区别?动态代理的底层
  • List、Set 和 Map 的区别及常见实现类、线程安全集合(总结图表)
  • 【正点原子K210连载】第七十六章 音频FFT实验 摘自【正点原子】DNK210使用指南-CanMV版指南
  • 自学python——第二天:)
  • AI大模型交付业务起势,亚信科技书写AI时代的转型样本
  • 游戏引擎学习第170天
  • 数据结构中的引用管理对象体系
  • ESP8266 与 ARM7 接口-LPC2148 创建 Web 服务器以控制 LED
  • Starrocks 命令 Alter table DISTRIBUTED 重分布数据的实现
  • 2025年全国铁路线路及站点(矢量shp数据)
  • C++多线程
  • 设计模式之代理模式:原理、实现与应用
  • IntelliJ IDEA新建文件配置作者信息、日期和描述等
  • FSC森林认证证书应用场景
  • python 数据可视化matplotib库安装与使用
  • 如何破解集运企业的劳动密集型困局,提高人效?
  • 中拉论坛部长级会议为何悬挂海地和圣卢西亚的国旗?外交部回应
  • 上海现有超12.3万名注册护士,本科及以上学历占一半
  • 27岁杨阳拟任苏木镇党委副职,系2020年内蒙古自治区选调生
  • 应急部:正在积极推动各地逐步科学建设改造应急避难场所
  • 北美票房|昔日偶像风光不再,乔什·哈内特新片开画不佳
  • 宇数科技王兴兴:第一桶金来自上海,欢迎上海的年轻人加入