JavaSE-04【方法】

文章目录

  • JavaSE-04【方法】
  • 第一章 方法
    • 1.1 方法定义的格式详解
    • 1.2 方法定义的三要素
    • 1.3 方法调用的流程图解
    • 1.4 方法定义的有无参数
    • 1.5 方法定义的有无返回值
  • 第二章 方法调用方式以及注意事项
    • 2.1 方法调用的注意事项
    • 2.2 调用方法的三种形式

JavaSE-04【方法】

第一章 方法

1.1 方法定义的格式详解

  • 1、方法:就是若干语句的功能集合
  • 2、生活案例:
    • 爆米花机: 原料:(玉米、糖) 产物:爆米花
  • 3、方法中的两个重要名词
    • 参数:即原料,就是进入方法的数据
    • 返回值:即产物,就是从方法中出来的数据
  • 4、格式
	修饰符 返回值类型 方法名称(参数类型 参数名称){
	     方法体;
	     return 返回值;
	}
  • 5、含义:
   修饰符:public static
   返回值类型:也就是方法最终产生的数据结果的类型
   方法名称:方法的名称,小驼峰命名
   参数类型:进入方法的数据类型
   参数名称:进入方法的数据对应的变量名称
   方法体:方法需要完成的功能
   return: 1)、方法停止执行
    	   2)、将return后面的数据返回给方法的调用处
   返回值:方法执行后最终产生的数据结果
   注意:return之后的数据值,必须和方法中的返回值类型保持一致对应关系

1.2 方法定义的三要素

  • 方法名称:即方法的名字,自定义即可,遵循小驼峰命名规则
  • 参数列表:可以是1个,也可以是多个,多个参数使用逗号隔开
  • 返回者类型:根据需求定义返回值类型,
    • 如 基本数据类型或引用数据类型,或无返回值void
public class Demo01_MethodDefine {
    public static void main(String[] args) {
        //1、单独调用sum方法,方法只执行
        sum(4,6);
        //2、打印调用sum。将调用方法的结果打印输出
        System.out.println(sum(10,20));
        //3、赋值调用,将方法执行的返回值赋值给另一个变量
        int result = sum(20,30);
        System.out.println(result);

    }
    /*
        需求:定义一个int类型的数字相加的方法
        三要素:
            方法名称:sum
            参数列表:int a,int b
            返回值类型:int
    */
    public static int sum(int a,int b){
        //int类型数据值相加运算
        int c = a+b;
        //返回数据
        return c;
    }
}

1.3 方法调用的流程图解

在这里插入图片描述

1.4 方法定义的有无参数

  • 有参数:方法名之后的小括号中有内容,即当一些方法需要一定的数据条件,才能完成功能
  • 无参数:方法名之后的小括号为空,即方法的执行不需要任何的数据条件,就能完成指定功能
  • 案例展示
public class Demo02_MethodParams {
    public static void main(String[] args) {
        //1、调用有参数方法
        add(20,40);
        //2、调用无参数方法
        print();
    }

    //1、有参数---定义int类型数据值相加方法
    public static void add(int a,int b){
        int result = a+b;
        System.out.println("打印输出result的结果:"+result);
    }

    //2、无参数---定义输出指定文本的方法
    public static void print(){
        System.out.println("我是一只疯狂的小蛮猪");
    }
}

1.5 方法定义的有无返回值

  • 有返回值的方法:方法执行结束之后,会将返回值返回到调用处
  • 无返回值的方法:方法执行结束之后,无需返回任何内容
    在这里插入图片描述
  • 案例演示
public class Demo03_MethodReturn {
    public static void main(String[] args) {
        /*
            需求1:有返回值
                定义方法,用于求出两个数字之和,并将方法的调用结果赋值给其他变量
            需求2:无返回值
                定义方法:用于打印两个数之和,方法执行返回的结果并不需要进行赋值
         */

        //需求1:调用方法并将返回值赋值给变量num1
        int num1 = getSum(22,33);
        System.out.println(num1);

        //需求2:调用方法,打印输出执行结果
        printSum(11,22);
    }

    //有返回值
    public static int getSum(int m,int n){
        int i = m+n;
        return i;
    }

    //无返回值
    public static void printSum(int a,int b) {
        System.out.println(a+b);
    }
}

第二章 方法调用方式以及注意事项

2.1 方法调用的注意事项

方法的注意事项
1、方法应该定义在类当中,但是不能在方法中在定义方法,不能嵌套
2、方法定义的前后顺序无特殊要求
3、方法定义之后不会执行,只有调用方法,方法才会执行。
   方法调用三种方式:单独调用、打印调用,赋值调用
4、如果方法有返回值,那么必须写:”return 返回值;5return后面的返回值数据,必须和方法的返回值类型匹配
6、一个方法当中可以有多个return语句,但是必须保证同时只有一个return会被执行
7、对于有返回值的方法,可以使用单独调用,打印调用或者赋值调用
8、对于无返回值的方法,只能使用单独调用,不能使用打印调用或者赋值调用

2.2 调用方法的三种形式

  • 1)、单独调用:方法名称() 或者 方法名称(参数)
  • 2)、打印调用:System.out.println(方法名称(参数))
  • 3}、赋值调用:数据类型 变量名称 = 方法名称(参数)
  • 注意:返回值是void的方法,调用之后不能打印,也不能赋值

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/27595.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【华为OD机试真题2023B卷 JAVAJS】评论转换输出

华为OD2023(B卷)机试题库全覆盖,刷题指南点这里 评论转换输出 时间限制:1s 空间限制:256MB 限定语言:不限 题目描述: 在一个博客网站上,每篇博客都有评论。每一条评论都是一个非空英文字母字符串。 评论具有树状结构,除了根评论外,每个评论都有一个父评论。 当评论保…

再看const成员函数

文章目录 再看函数重载const成员函数保安(const)能保护所有人(类成员)吗?mutable修饰类成员 const/非const成员函数的复用 关于函数重载实际上我理解不是很深入,直接导致const成员函数这块出大问题&#xf…

chatgpt赋能python:Python如何升序输出?从入门到实践!

Python如何升序输出?从入门到实践! 作为一门高级编程语言,Python是目前应用广泛且最为流行的一门语言之一。它逐渐成为开发者的首选语言,因为它易学易用,可读性强,支持多种编程范式,提供了强大…

【MySQL 数据库】9、存储过程

目录 一、存储过程是什么二、存储过程的基本语法三、MySQL 中的变量(1) 系统变量(2) 用户自定义变量(3) 局部变量 四、if 判断五、参数传递和返回值六、case 语句七、while 循环八、repeat 循环九、loop 循环十、游标十一、条件处理程序 一、存储过程是什么 🌱 存储…

Java反射与注解

文章目录 一、 注解1.简介2. 元注解3. 自定义注解 二、 反射1. 简介2. 理解Class类并获取Class实例3. 类的加载与初始化4. 类加载器ClassLoader5. 获取运行时类的完整结构6. 动态创建对象执行方法7. 反射操作泛型8. 反射操作注解 一、 注解 1.简介 Annotation是JDK5.0开始引入…

第二章 搭建TS环境

搭建 TypeScript 的开发环境。一个舒适、便捷且顺手的开发环境,不仅能大大提高学习效率,也会对我们日常的开发工作有很大帮助。 这一节我们就来介绍 VS Code 下的 TypeScript 环境搭建:插件以及配置项。对于 TS 文件的执行,我们会…

《横向联邦学习中 PCA差分隐私数据发布算法》论文算法原理笔记

论文地址:https://www.arocmag.com/article/01-2022-01-041.html 论文摘要 为了让不同组织在保护本地敏感数据和降维后发布数据隐私的前提下,联合使用 PCA进行降维和数据发布,提出横向联邦 PCA差分隐私数据发布算法。引入随机种子联合协商方…

linuxOPS基础_linux软件包安装

软件包概述 上图是windows下的软件包 Linux下也有很多可以安装的软件,而这些软件的安装包可细分为两种,分别是源码包和二进制包。 Linux下软件的安装方式 ① RPM软件包安装 > 软件名称.rpm ② YUM包管理工具 > yum install 软件名称 -y ③ 源码…

基于QGIS的长株潭城市群边界范围融合实战

背景 在面向区域的研究过程中,比如一些研究区域,如果是具体的行政区划,比如具体的某省或者某市或者县,可以直接从国家官方的地理数据中直接下载就可以。但如果并没有直接的空间数据那怎么办呢?比如之前遇到的一个场景&…

【郭东白架构课 模块二:创造价值】31 |节点六: 如何组织阶段性的价值交付?

你好,我是郭东白。上节课我们讲了为什么要做阶段性的价值交付,以及进入阶段性价值交付环节的准备工作。有了这些学习基础,这节课我们就可以进行阶段性价值交付了。 在交付的过程中,主要有三部分工作:目标分解、定义交…

数据结构——堆(C语言实现)

文章目录 什么是堆堆的实现堆的结构定义堆的初始化接口堆的销毁接口堆的插入数据接口向上调整建堆接口判断堆是否为空堆的删除数据接口向下调整建堆接口获取堆顶数据获取堆的有效数据个数完整实现代码小结 堆排序堆排序的实现 关于建堆和堆排序时间复杂度的分析向下调整建堆向上…

day52|动态规划13-子序列问题

子序列系列问题 300.最长递增子序列 什么是递增子序列: 元素之间可以不连续,但是需要保证他们所在位置是元素在数组中的原始位置。 dp数组dp[i]表示以nums[i]为结尾的最长递增子序列的长度。递归函数:dp[i] max(dp[j]1,dp[j])初始化条件&…

算法刷题-链表-移除链表元素

链表操作中,可以使用原链表来直接进行删除操作,也可以设置一个虚拟头结点再进行删除操作,接下来看一看哪种方式更方便。 203.移除链表元素 力扣题目链接 题意:删除链表中等于给定值 val 的所有节点。 示例 1: 输入&…

Linux下信号量使用总结

目录 1.Linux下信号量简介 2.POSIX信号量 2.1 无名信号量 2.2 有名信号量 3.System V信号量 1.Linux下信号量简介 信号量是解决进程之间的同步与互斥的IPC机制,互斥与同步关系存在的症结在于临界资源。 临界资源是在同一个时刻只容许有限个(一般只有…

【数据结构与算法】03 队列(顺序队列--循环队列--优先级队列--链队列)

一、概念1.1 队列的基本概念1.2 队列的顺序存储结构1.21 顺序队列(静态队列)1.22 循环队列1.23 优先级队列 1.3 队列的链式存储结构 二、C语言实现2.1 顺序存储2.11 顺序队列2.12 循环队列2.13 优先级队列 2.2 链式存储 一、概念 1.1 队列的基本概念 队…

Linux内核中断和Linux内核定时器

目录 Linux内核中断 Linux内核定时器 Linux内核中断 int request_irq(unsigned int irq, irq_handler_t handler, unsigned long flags,const char *name, void *dev) 功能:注册中断 参数: irq : 软中断号 gpio的软中断号 软中断号 gpio_to_i…

【PCB专题】案例:绕等长怎么直接以颜色区分看出是否绕好

PCB上对于时序的处理,在板卡上实际我们是通过绕等长的手段。做为一个合格的Layout工程师,等长的处理是不可或缺的技能。 一般来说,在绕等长的时候我们可以使用Delay Tune命令来改变走线的长度,然后通过规则管理器中分析看看哪根线长哪根线短。 但是在实际工作中,很可能绕着…

Android应用程序进程的启动过程

Android应用程序进程的启动过程 导语 到这篇文章为止,我们已经简要地了解过了Android系统的启动流程了,其中比较重要的内容有Zygote进程的启动和SystemService以及Launcher的启动,接下来我们将要学习的是Android应用程序的启动过程&#xff…

华为OD机试真题 JavaScript 实现【最多几个直角三角形】【2023Q1 100分】

一、题目描述 有 N 条线段&#xff0c;长度分别为 a[1]-a[n]。 现要求你计算这 N 条线段最多可以组合成几个直角三角形&#xff0c;每条线段只能使用一次&#xff0c;每个三角形包含三条线段。 二、输入描述 第一行输入一个正整数 T (1< T< 100) &#xff0c;表示有…

2023蓝桥杯大学A组C++决赛游记+个人题解

Day0 发烧了一晚上没睡着&#xff0c;感觉鼻子被打火机烧烤一样难受&#xff0c;心情烦躁 早上6点起来吃了个早饭&#xff0c;思考能力完全丧失了&#xff0c;开始看此花亭奇谭 看了六集&#xff0c;准备复习数据结构考试&#xff0c;然后秒睡 一睁眼就是下午2点了 挂了个…