*方法:
方法概述:
方法是将具有独立功能的代码块组织成为一个整体,使其具有特殊功能的代码集
注意:
①方法必须先创建才可以使用,该过程称为方法定义
②方法创建后并不是直接运行的,需要手动使用后才执行,该过程称为方法调用
方法的定义和调用:
定义:
格式:
public static void 方法名(){
方法体
}
调用:
格式:方法名();
带参数方法的定义和调用:
定义:
格式:
public static void 方法名(参数){
方法体
}
参数:数据类型 变量名
注意:参数可以是一个也可以是多个
例如:单个:int a
多个:int a,int b ,int c,....
多个参数之间使用逗号(,)分隔
调用:
格式:
方法名(参数);
参数:变量名/常量值
多个参数用逗号(,)分隔
注意:方法调用时,参数的数量与类型必须与方法定义中的设置相匹配,否则程序将报错
形参和实参:
形参:方法定义中的参数
等同于变量定义格式数据类型 变量名 = 变量值,例如:int number = a
实参:方法调用中的参数
等同于使用变量或常量,例如:10,number(不带数据类型)
带返回值方法的定义和调用:
定义:
格式:
public static 数据类型 方法名(参数){
return 数据;
}
注意:return数据与方法的数据类型对应
调用:
格式一:
方法名(参数)
格式二(有意义且常用的):
数据类型 变量名 = 方法名(参数);
注意:方法的返回值通常会使用变量接收,否则该返回值将无意义
输出结果格式:
①输出语句(方法名(常量值或者变量名));
②数据类型 变量名 = 方法名(参数);
输出语句(变量名);
注意:在方法内如果是定义一个形参的并且只操作一个形参的,则可以在分支语句里面写return
如果有两个形参并且操作两个形参的,即用分支语句只有if和else if语句,且在后面花括号里面写return不能达到返回值的效果,
需要在语句外多定义个变量来承接。
方法的注意事项:
①方法不能嵌套定义
②void表示无返回值,可以省略return,也可以单独的书写return,但return后面不加数据
方法通用格式:
格式:
public static 返回值类型 方法名(参数){
方法体;
return 数据;
}
public static :修饰符
返回值类型(明确):方法操作完毕之后返回的数据的数据类型
如果方法操作完毕,没有数据返回,这里写void,而且方法体中
一般不写return
方法名 :调用方法时候使用的标识
参数 (明确) :由数据类型和变量名组成,多个参数之间用逗号隔开
方法体 :完成功能的代码块
return :如果方法操作完毕,有数据返回,用于把数据返回给调用者
方法重载:
指同一个类中定义的多个方法之间的关系
在调用的时候,java虚拟机会通过参数的不同来区分同名的方法
满足条件:
①多个方法在同一个类中
②多个方法句有相同的方法名
③多个方法的参数(包括形参数据类型)不相同,返回值类型不同或者数量不同(满足至少其中一个,如果只是返回值类型改变不能看出是重载)
特点:
①重载仅对应方法的定义,与方法的调用无关,调用方式参照标准格式
②重载仅针对同一个类中方法的名称与参数进行识别,与返回值无关,换句话说不能通过返回值来判定
两个方法是否相互构成重载
注意:数据类型的默认类型,以及long和float类型
方法的参数传递:
基本类型参数:
通过方法里的方法改变是无法改变main方法里面的参数值的 ,实例:void change
引用类型参数:
因为在堆内存的地址相同,所以通过方法里的方法改变是能改变main方法里面的参数值的
Stirng类型:
String类对象一旦创建,其内容不可更改:
String类的所有方法都不会改变String类对象内容,要改变String类对象的值就必须创建一个新的String对象。
也就是说,当进行参数传递时,如果方法内对String类对象的值进行了修改,
那么实际上是创建了一个新的String类对象,然后让原来的变量指向它而已。