一、Java中的方法:
方法是程序中最小的执行单元。通过将重复的代码、具有独立功能的代码抽取到方法中,可以提高代码的复用性和可维护性。
二、Java中方法的定义和调用:
1.方法定义:将一些代码打包在一起,该过程称为方法的定义。
2.方法调用:方法定义后不能直接运行,需要手动调用才能执行,该过程称为方法调用。
3.最简单的方法定义和调用:
方法的定义:
public static void 方法名称(){
方法体(就是打包起来的代码);
};
方法的调用:
方法名称();
4.带有参数的方法的定义和调用:
方法的定义:
public static void 方法名称(参数类型1,参数1,参数类型2,参数2,....,参数类型n,参数n){
方法体(就是打包起来的代码);
};
方法的调用:
方法名称(变量1,变量2,...,变量n);
方法调用时,参数的数量和类型必须与方法定义中小括号里面的变量一一对应,否则程序将会报错
5.方法中的形参和实参:
形参全称是形式参数,是指方法定义中的参数
实参全称是实际参数,是指方法调用中的参数
6.带有返回值方法的定义和调用:
方法的返回值其实就是方法运行的最终结果,如果在调用处要根据方法的结果去编写另外一段代码逻辑,为了在调用处拿到方法产生的结果,就需要定义带有返回值的方法。
带有返回值的方法定义:
public static 方法返回值类型 方法名称(参数1,参数2,....,参数n){
方法体(就是打包起来的代码);
return 返回值;
};
带有返回值的方法调用:
方法名(变量1,变量2,...,变量n);
变量类型 变量名 = 方法名称(变量1,变量2,...,变量n);
sout(方法名(变量1,变量2,...,变量n));
7.方法注意事项:
(1).方法不调用就不会执行
(2).方法与方法之间是平级关系,不能互相嵌套定义
(3).方法的编写顺序和执行顺序是没有任何的关系的
(4).方法的返回值类型为void时表示该方法没有返回值,此时可以省略return语句不写,如果要写的话后面不能跟随具体的数据
(5).return语句后面不能编写任何代码,因为永远执行不到,属于无效的代码
8.方法中的return关键字
(1).方法没有返回值,可以省略不写,如果书写表示结束方法
(2).方法有返回值时必须要写,此时表示结束方法和返回结果
三、Java中的方法重载:
在同一个类中定义了多个同名的方法,这些同名的方法有同种功能。但是每个方法具有不同的参数类型或参数个数,这些同名的方法就构成了重载关系。简记为:同一个类中,方法名相同,参数不同的方法,与返回值无关。所谓参数不同是指这些方法的参数的个数不同、参数的类型不同以及参数的顺序不同。JAVA虚拟机会通过参数的不同区分同名的方法。
四、方法的内存:
1.方法栈:方法运行时使用的内存,方法进栈运行,代码全部运行结束后出栈。
2.基本数据类型和引用数据类型:
(1)基本数据类型:整数类型、浮点数类型、布尔类型、字符类型。这些类型的变量中存储的真实数据,其数据值是存储在自己的空间中,赋值给其他变量时赋的是真实的值
(2)引用数据类型:使用new关键字得到的数据类型。这些类型的变量中存储的是地址值,数据值存储在其他的空间中,赋值给其他变量时赋的是地址值。
五、方法的值传递:
方法传递基本数据类型时,传递的是真实的数据,形参的改变不会影响实参的值
方法传递引用数据类型时,传递的是地址值,形参的改变会影响实参的值