1.方法的定义:将独立功能的代码块组织成一个整体使其拥有特殊功能的代码集。
*注意:
a.方法必须先创建才可以使用,该过程称为方法定义。
b.方法创建后并不能直接运行,需要手动调用后才执行,该过程称为方法调用(在main方法中调用)。
2.方法定义和调用格式:
a:定义格式:
public static void 方法名() {
方法体
}
b:调用格式:
方法名();
c:例子
package demo06;
public class Test {
public static void main(String[] args) {
//方法调用
isEvenNumber();
}
//定义一个方法判断该数是否为偶数
public static void isEvenNumber() {
int number = 10;
if (number % 2 == 0) {
System.out.println(true);
} else {
System.out.println(false);
}
}
}
3.带参数方法的定义与调用
a.定义格式:
(1.单个参数)public static void 方法名(数据类型 参数) {
//方法体
}
(2.多个参数)public static void 方法名(数据类型1 参数1,数据类型2 参数2,.....) {
//方法体
}
b.调用格式:
(1.单个参数)函数名(常量/变量);
(1.单个参数)函数名(常量1/变量1,常量2/变量2,......);
c.例子:
package demo06;
public class Test {
public static void main(String[] args) {
//方法调用(常量调用)
isEvenNumber(10);
//方法调用(变量量调用)
int a = 9;
isEvenNumber(a);
}
//定义一个方法判断该数是否为偶数
public static void isEvenNumber(int number) {
if (number % 2 == 0) {
System.out.println(true);
} else {
System.out.println(false);
}
}
}
4.带返回值的方法的定义与调用
a.定义格式:
public static 数据类型 方法名(参数) {
return 数据类型;
}
*注意:return后面的返回值的数据类型必须和方法定义时的数据类型保持一致否则程序将会报错。
b.调用格式:
(1)方法名(参数);
(2)数据类型 变量名 = 方法名(参数);
*注意:(1)调用方法一般意义不大(2)调用方法使用的更多,因为它用一个变量接收了方法返回值,可以接着在程序中对返回值进行使用。
c.例子:
package demo06;
public class Test {
public static void main(String[] args) {
//方法调用(定义一个变量接收)
boolean a = isEvenNumber(10);
//对返回值进行操作(输出操作)
System.out.println(a);
}
//定义一个方法接收一个参数,判断该数是否为偶数,并返回真假值
public static boolean isEvenNumber(int number) {
if (number % 2 == 0) {
return true;
} else {
return false;
}
}
}
d.方法的注意事项:
(1):方法不能嵌套定义
(2):void 表示无返回值,可以不写return或者单独写return后面不加放回值;
例子:
public static void method(){
}
public static void method(){
return;
}
5.方法重载:
A.定义:指一个一个类中定义的多个方法之间的关系,满足以下的多个条件即可构成方法重载。
a.多个方法在同一个类中;
b. 多个方法具有相同的方法名;
c.多个方法的参数不同,类型不同或者数量不同
B.特点:
a.重载仅对方法的定义,对方法的调用无关。
b.重载仅针对一个类中方法的名称与参数进行识别,与返回值无关,换句话说不能通过返回值来判断两个方法是否构成重载。
例子:
package demo06;
public class Test {
public static void main(String[] args) {
//调用方法
int a = sum(10, 20);
double b = sum(20.0, 20.0);
int c = sum(50, 50);
System.out.println(a);
System.out.println(b);
System.out.println(c);
}
//需求1:两个int类型的数据求和
public static int sum(int number1, int number2) {
return number1 + number2;
}
//需求1:两个double类型的数据求和
public static double sum(double number1, double number2) {
return number1 + number2;
}
//需求1:三个int类型的数据求和
public static int sum(int number1, int number2, int number3) {
return number1 + number2 + number3;
}
}