0
点赞
收藏
分享

微信扫一扫

方法(Method)

践行数据分析 2022-02-16 阅读 66
java

方法

一.方法简单介绍:

方法概念: 方法是一种语法结构,它可以把一段代码封装成一个功能,以方便重复调用。

使用方法的好处: 提高了代码的复用性,让程序的逻辑更加清晰。

二.方法的定义与调用:

方法的定义格式:

修饰符 返回值类型 方法名( 形参列表 ){
方法体代码(需要执行的功能代码)
return 返回值;
}

方法名:自己取名,有意义,英文小写,第一个单词的首字母小写,以后每个单词的首字母大写,驼峰模式。(有意义的名字即可)

注:
真正需要关注的就两点:

  • 分析方法是否需要声明返回值类型;
  • 分析方法是否需要接收参数。
    在这里插入图片描述
    方法的调用格式: 方法名(…);
sum(10,20);

二.使用方法的注意事项:

  • 方法的修饰符:暂时都使用public static 修饰。
  • 方法声明了具体的返回值类型,内部必须使用return返回对应类型的数据。
  • 形参列表可以有多个,甚至可以没有; 如果有多个形参,多个形参必须用“,”隔开,且不能给初始化值。
  • 如果方法不需要返回结果,返回值类型必须声明成void(无返回值), 此时方法内部不可以使用return返回数据或者方法没有申明返回值类型,内部也不能使用return返回数据。如果方法的返回值类型写了具体类型,方法内部则必须使用return返回对应类型的数据。
  • 方法不需要参数,则形参列表可以不写。
  • 方法的编写顺序无所谓。
  • 方法与方法之间是平级关系,不能嵌套定义。(如不能在main方法中嵌套定义方法)
  • return语句下面,不能编写代码,因为永远执行不到,属于无效的代码。
  • 方法不调用就不执行, 调用时必须严格匹配方法的参数情况。
  • 有返回值的方法调用时可以选择定义变量接收结果,或者直接输出调用,甚至直接调用(即只是让函数运行一遍,放弃返回值);无返回值方法的调用只能直接调用。

三.方法调用的内存图:

方法没有被调用的时候,在方法区中的字节码文件中存放,方法被调用的时候,需要进入到栈内存中运行。

在这里插入图片描述首先在方法区中执行到main函数,main函数进入栈内存,在栈内存中进入main函数,执行到add函数时,add函数进入栈内存,然后在栈内存中进入add函数,add函数执行完毕后出栈,回到main函数,继续执行后面的语句,main函数执行完毕后,main函数出栈。

在这里插入图片描述首先在方法区中执行到main函数,main函数进入栈内存,在栈内存中进入main函数执行到study函数时,study函数进栈,在栈内存中执行study函数,然后eat函数进栈,执行eat函数,执行完毕后执行下面语句,最后sleep函数进栈,在栈内存中执行sleep函数,sleep函数执行完毕后出栈,然后study函数执行完毕出栈,最后main函数执行完毕出栈。

四.Java的参数传递机制:

值传递:
在传输实参给方法的形参的时候,并不是传输实参变量本身, 而是传输实参变量中存储的值,这就是值传递。

实参: 如在方法内部定义的变量。
形参: 如在定义方法时,“()”中所声明的参数。

2.基本类型的参数传递:
在这里插入图片描述
引用类型的参数传递:
在这里插入图片描述基本类型和引用类型的参数在传递的时候有什么不同:
都是值传递。基本类型的参数传输存储的数据值。引用类型的参数传输存储的地址值。

五.方法重载

什么是重载:
同一个类中,多个方法的名称相同,形参列表不同,那么它们就是重载的方法,其它的不管(如修饰符,返回值类型都无所谓)
形参列表不同指的是形参的个数,顺序,类型不同,与形参的名称无关。调用方法的时候会通过参数的不同来区分调用的是哪个方法

方法重载的作用:
可读性好,方法名称相同提示是同一类型的功能,通过形参不同实现功能差异化的选择,这是一种专业的代码设计。

六.return关键字:

return:跳出并结束当前方法的执行。
break: 跳出并结束当前所在循环的执行。
continue: 结束当前所在循环的当次继续,进入下一次执行。

举报

相关推荐

0 条评论