ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

javaSE_Day_004

2021-07-24 09:34:31  阅读:102  来源: 互联网

标签:return 修饰符 数据类型 参数 004 返回值 javaSE 方法 Day


7. 方法的声明及使用

方法(函数)是程序的重要组成部分,利用方法可以更好地实现代码的重用操作。

  • 在一些资料中会将Java中的方法称为函数,在Java官方文档中已经进行过说明,Java是不区分方法和函数的,但是函数的叫法是由面向过程的编程思想提供,而Java是面向对象编程思想,所以建议称为方法。

7.1 方法的定义

(1)说明:方法就是一段可重复调用的代码段。

(2)格式:

访问权限修饰符 其他修饰符 返回值类型 方法名(参数列表) {
    方法体;
    return;
}

(3)详细说明:

  • 访问权限修饰符:限制谁可以访问这个方法。
    • Java一共有四种权限修饰符,这里先统一使用public
    • public是四种权限修饰符中权限最大的修饰符。含义为:公有的,即任何人都可以对这个方法进行访问。
  • 其他修饰符:这个修饰符可有可无,但是写与不写是两种含义。
    • Java一共有三种其他修饰符,这里先统一使用static
    • 为什么使用static?
      • 因为在Java中有一个方法原则,在静态方法中(static修饰的方法)是可以直接调用其它静态方法的,现在可以使用方法只用一个使用static修饰的main,所以为了方便我们可以正常使用方法,统一使用static对方法进行修饰。
  • 返回值类型:告诉方法使用者,使用这个方法后可以得到一个怎样的结果。
    • 返回值类型主要有三种:基本数据类型、引用数据类型和void(无返回值类型)。
    • viod是一个关键字,这个关键字只能在方法定义时使用,无法在其他位置使用。
  • 方法名:方法的名字。
    • 方法命名规范:
      • 采用小驼峰的命名方式,即第一个单词的字母小写,之后每一个单词的首字母大写。
  • 参数列表:参数列表主要是为了方法中需要使用到外接定义值时,提供一种传递途径。
    • 参数列表中主要是定义变量,多个变量之间使用,分隔,这个变量主要是为了接受外界的数据并进行在方法内部使用。
    • 方法的参数列表可有可无,需要自己思考是否使用参数类表。若不需要参数列表时,()要保留,里面什么也不写。

7.2 return 关键字

(1)说明:这个关键字的书写取决于返回值类型,如果方法的返回值类型是void,则可以不写return关键字,也可以写但是不能带有任何返回值数据;如果方法的返回值类型是基本数据类型或引用数据类型,那么方法中必须存在return关键字,并且这个关键字需要带有对应数据类型的数据。

(2)作用:return关键字可以结束一个方法并返回一个具体数值给调用者。

  • 一个方法中有且仅有一个return会被执行,在方法中可以提供多个return关键字,但是需要使用分支语句将其隔开。
  • return后只能接一个值,且值的类型要与返回值类型相对应。

7.3 方法的重载

(1)说明:方法的重载就是方法名称相同,但是参数的类型和参数的个数不同,通过传递参数的个数及类型不同以完成不同功能方法的调用。

(2)重载方法的三要素(只需要满足其中一条即可):

  • 参数数据类型不同。
  • 参数个数不同。
  • 不同数据类型的参数定义顺序不同。
    • 相同数据类型的参数定义顺序不同不能算是重载。
      • 例如:
public static float add(int x, int y) {
    float temp = 0;
    temp = x + y;
    return temp;
}

public static float add(int y, int x) {
    int temp = 0;
    temp = x + y;
    return temp;
}

7.4 方法的递归调用

(1)说明:递归调用是一种特殊的调用形式,是方法自己调用自己。

(2)方法递归调用的流程图:

image

(3)注意:递归调用在操作的时候如果处理不好,则有可能出现内存溢出,所以对于这种方法调用形式,在使用时要谨慎。

标签:return,修饰符,数据类型,参数,004,返回值,javaSE,方法,Day
来源: https://www.cnblogs.com/yunStudy0214/p/15054450.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有