关于Java中的方法重载、调用、函数、return的总结
目录
1.方法是什么?
定义:方法是一种语法结构,它可以把一段代码封装成一个功能,以方便重复调用。
1.1使用方法的好处?
- 让程序的逻辑更清晰。
- 提高了代码的复用性。
2.函数是什么?
定义:函数就是定义在类中的具有特定功能的一段独立程序,并能被多次使用,函数也称为方法。
注意:函数是定义在类中,而不能在函数中定义函数。
格式:
权限修饰符 函数类型 返回值类型 函数名(数据类型 数据1,数据类型 数据2,...) {
独立功能的代码片段(执行语句);
return 返回值;
}
- 修饰符:指的是函数的访问权限,public private protected default(默认)。
- 函数类型:函数的分类,本地函数native,静态函数static,同步函数 synchronized等
- 返回值类型:指的就是函数计算结果的数据类型 如果函数没有返回值,则为void
- 函数名:就是函数的名称
- 参数列表:指的是外界向函数传入的数据(实际参数),由这些参数变量进行接收(形式参数)
- return:仅仅表示函数结束!如果函数有返回值,则return后跟返回值;如果没有返回值,则return可以不写,但是return是存在的(隐藏在最后一行)
- 返回值:指的就是这一具有独立功能的代码块的计算结果,需要传递给外界 配合return
2.1修饰符
定义:函数的访问权限
- default: 没有任何修饰符的权限就是「包访问权限」,意味着当前包的所有类都可以访问这个成员;
- public:被public修饰的成员对任意一个类都是可用的,任何一个类都可以访问到,通过操作该类的对象随意访问public成员
- protected:在相同的class内部,同一个包内和其他包的子类中能被访问。要理解protected权限,就需要了解「继承」,因为这个权限处理的就是继承相关的概念,继承而来的子类可以访问「public、protected」,
- private: 除了包含这个成员的类之外,所有类都无法访问这个成员,相当于自我封闭,防止其他类改变或删除这个方法
2.2静态对象static
定义:Java 中被 static 修饰的成员称为静态成员或类成员。它属于整个类所有,而不是某个对象所有,即被类的所有对象所共享。
- 静态成员可以使用类名直接访问,也可以使用对象名进行访问。当然,鉴于他作用的特殊性更推荐用类名访问。
- 使用 static 可以修饰变量、方法和代码块。
3.方法:
3.1方法定义的格式:
3.2参数和返回值:
方法的参数和返回值都不是必须有的,根据需要设置。
- 形式参数:声明方法时指定的参数,用来说明这个方法可以接受哪些参数(简称形参)
- 实际参数:调用方法时实际传入的参数,用于方法执行过程中实际的运算(简称实参)
方法的返回值:方法执行完成后,给方法的调用者返回的结果数据。
3.3方法调用格式:
方法必须调用才可以跑起来,调用格式:
3.4方法注意事项:
- 方法的返回值类型为void(无返回值),方法内则不能使用return返回数据,如果方法的返回值类型写了具体类型,方法内部则必须使用return返回对应类型的数据。
- return语句下面,不能编写代码,因为永远执行不到,属于无效的代码。
- 方法如果没有参数,或者返回值类型申明为void可以称为无参数、无返回值的方法,依次类推。
- 方法的修饰符:暂时都使用public static 修饰。
- 方法申明了具体的返回值类型,内部必须使用return返回对应类型的数据。
- 形参列表可以有多个,也可以没有; 如果有多个形参,多个形参必须用“,”隔开,且不能给初始化值。
问题1:方法要执行必须怎么办,如何进行?
答:必须进行调用;调用格式:方法名称(…)。
3.5方法的相关规则:
- 方法的编写顺序无所谓,但方法必须写在类中,不能独立存在。
- 方法与方法之间是平级关系,方法内部不能再声明方法,即不能嵌套定义。
- 方法调用一次就会执行一次,方法不调用就不执行,调用时必须严格匹配方法的参数情况。
- 方法如果没有返回值,方法体内可以没有return;如果写了return,那么表示方法结束。
- 方法声明的返回值类型必须和实际返回的数据类型一致。
3.6方法的小结:
问:如果方法不需要返回结果,不需要接收参数,应该怎么办,要注意什么?
- 方法不需要返回结果,则申明返回值类型为void;方法不需要参数,则形参列表可以不写。
- 方法没有申明返回值类型,内部不能使用return返回数据。
- 方法如果没有形参列表,调用的时候则不能传入参数值,否则报错。
问:如何使用方法返回一个整型数组的最大值的?
方法需要申明返回值类型:int
方法需要定义形参列表: (int[ ] arr)
问:形参和实参各指什么?
形参:以方法为例,就是方法定义时的变量。
实参:在方法内部定义的变量。
问:Java的参数传递机制是什么样的?
值传递,传输的是实参存储的值。
Java 中参数传递其实就是赋值操作。
Java 中只存在值传递。
4.方法重载:
定义:同一个类中,出现多个方法名称相同,但是形参列表是不同的,那么这些方法就是重载方法。
Java 允许同一个类中定义多个同名方法,只要它们的形参列表不同即可。
4.1方法重载的作用:
- 可读性好,方法名称相同提示是同一类型的功能,通过形参不同实现功能差异化的选择,这是一种专业的代码设计。
- 在一个类中,很可能会有很多类似的需求,为了满足这些需求,我们会声明很多相似的方法。同时为了让方法的调用者体验更好、更容易找到所需方法,这些功能相近的方法最好使用『同一个方法名』。
4.2方法重载的限制:
在同一个类中,如果两个方法的方法名一致,那么参数列表必须不同。
- 要么是参数个数不同
- 要么是参数类型不同
4.2方法重载的小结:
问:方法重载是什么样的?
答:同一个类中,多个方法的名称相同,形参列表不同。
问:使用方法重载的好处 ?
答:对于相似功能的业务场景:可读性好,方法名称相同提示是同一类型的功能,通过形参不同实现功能差异化的选择,这是一种专业的代码设计。
5.return关键字单独使用:
return; ---> 可以立即跳出并结束当前方法的执行。
问:如果要直接结束当前方法的执行,怎么解决?
return; 跳出并立即结束所在方法的执行。
break; 跳出并结束当前所在循环的执行。
continue; 结束当前所在循环的当次继续,进入下一次执行。