JAVA入门.零基础学Java语言 MOOC 第7周 函数

时间:2023-01-28 18:45:57

第7周 函数



7.1 函数定义与调用

7.2 函数参数与函数内的变量



Java的函数必须定义在类的内部,成为类的成员。

定义一个函数,要像这样写:


<返回类型> <方法名称>(<参数表>) {

<方法体>
}


返回类型是这个函数运行结束时要返回给调用者的数据的类型,函数可以返回基本数据类型、对象或者void。返回void表示这个函数不返回任何值。

函数名称是一个Java名字,一样要遵循和变量一样的命名规则。

参数表是0个或1个或多个参数定义,用逗号’,’分隔。


在这个阶段,我们要在所有的函数的返回类型前面加上关键字“static”。static表示这个函数属于这个类,而不属于这个类的任何对象,因此我们才可以不制造这个类的对象,而直接从main()函数中调用它。


当一个函数被调用时,程序就转到这个函数中去运行,函数体里的语句就一条一条地被调用。一旦函数运行结束,就又回到调用它的地方去继续运行。




。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。


7.1 函数定义与调用


定义函数

对象的操作,对象在执行函数

求和函数(公共部分提取):代码模块构造,函数,变量,参数,方法


什么是函数

一块代码。接收零个或多个参数,做一件事,并返回值零个或多个)。

函数头(public static+返回类型+函数名【标识符】+参数表(int a,int  b))+函数体{             

                       ;

                       ; 

                       ;




调用函数

函数名(参数值);【“()”没有参数也不可以省略,有参数时应该给出正确参数的顺序和数量,这些值会用来依次初始化函数中的参数】

step into 调试函数



函数返回

调用完成后返回值到正确的地方



从函数返回值:reture语句

reture 表达式 reture 停止函数执行并返回一个值,可以出现多个reture

viod  函数名(参数表)

无reture :调用的时候不能做返回值的赋值





。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。



7.2 函数参数与函数内的变量


参数传递

调用函数:【函数有参数调用时必须传递给它类型数量正确的值,可以传递的值是表达式的结果,包括字面量,函数返回值,变量,计算结果


类型不匹配?——转换

强类型转换方法【(int)a】

函数的参数期望类型比调用的参数类型的时候,编译器会帮你把类型转换做好,char->int->double


传过去的是什么?———  传值

JAVA语言调用函数时,永远只能传值给函数

每个函数有自己的变量空间,参数也位于这个独立的空间内,和其他函数没有关系

对函数参数表内的参数叫形式参数,调用函数时给出的函数参数的值叫实际参数。




当参数是数组和对象(字符串)时?



本地变量

函数的每次运行,会产生一个独立的存放变量的内存空间,这个内存空间的变量是这个函数这次运行所独有的,称为本地变量。定义在函数内部的就是本地变量。

参数也是本地变量



变量的生存期和作用域

变量的生存期: 什么时候产生,什么时候消失,(存在)

作用域:可以访问变量的范围,变量起作用(使用)

对于本地变量就是大括号内------块


类的成员变量

定义在哪一层即"{}"块内。重复定义变量以高层次为准


本地变量的规则

定义在块“{}”里,即可以是函数块也可以是语句块内,甚至是任意“{}”内;程序进入块之前,变量不存在,出块,变量消失。

块外的变量在块内仍然有效。不能快内同名,也不能块外定义过的变量。

本地变量不会默认初始化,参数在进入函数时被初始化了,