一、方法的定义
访问修饰符 返回值类型 方法名(形式参数列表){
return 返回值类型的值
}
public void cal(int num1,double num2){
}
二、方法的使用
- 对象名.方法名(实际的参数,实际的参数。。。。),例子:对象名.cal(100,200.5);
三、形参与实参的区别
- 形参在方法定义的时候,实参在方法调用的时候
- 形参的个数和数据类型,必须实参一致
注意:实参与形参的变量名没有任何关系,可以不一样
形参限制了参数的数据类型,实参传递的是具体的值
四、方法的重载
- 作用:解决方法名太多的问题,同一个方法名,根据参数的不同,而执行不同的代码块
- 语法:
1.同一个类中,方法名相同,参数列表不同(个数、数据类型)
2.访问修饰符和返回值类型是无关的
五、构造函数
- 定义的语法
访问修饰符 类名(参数列表){
}
- 注意事项:
2.1 当类中没有任何的构造函数时,JVM会自动提供一个无参的构造函数,完成属性的初始化赋值(默认值)
2.2 当类中有任何一个构造函数时,JVM都不会再提供无参构造函数,但属性也会完成初始化赋值(默认值)。
2.3 构造函数中可以调用类中任何属性和方法,一般通过this指定
2.4 在类中,构造函数只能在其他的构造函数中通过this(参数)调用
2.5 在类外,只能通过new 构造函数(参数)调用
六、全局变量与局部变量
- 定义位置不一样
全局变量,定义在类中(属性)
局部变量,定义在方法中(变量) - 作用域不同
全局变量,在类中任何地方都可以被使用
局部变量,只能在定义的方法中被使用 - 注意事项:
1.局部变量比全局变量的优先级别更高
2.形参名就是一个局部变量,优先级别比全局变量高
3.建议通过this指向全局变量,进行区分
七、方法传参
- 基本数据类型,通过方法无法修改外部的值(值传递)
- 引用数据类型,通过方法可以改变对象的属性值(地址传递)
- 方法中都不能改变实参的地址指向,=号都无法对外部产生效果(java中都是值传递)