方法的基本定义(将功能重复的代码封装成一段独立的代码,通过调用的方式以提高代码的复用性(减少代码重复))
限制条件:在主类中定义,并且由主方法直接调用的方法形式。
- 方法就是一段可以被重复调用的方法块。在Java中要想进行方法的定义,则可以使用如下的语法完成。
public static 返回类型 方法名称([参数类型 变量, ......]) {
方法体代码;
[return [返回值];]
}
在定义方法的时候对于方法的返回值有一下的两类:
- void:没有返回值;
- 数据类型(基本类型,引用类型)。
1.定义一个没有返回值,没有参数的方法
public class TestDemo {
public static void main(String[] args) {
print(); //主方法里面直接调用方法
}
public static void print() {
System.out.println("Hello World!"); //定义方法
}
}
2.定义一个有参数无返回值的方法
public class TestDemo {
public static void main(String[] args) {
print("Hello"); //主方法里面直接调用方法
print(" world");
print("!");
}
public static void print(String msg) { //定义方法
System.out.print(msg);
}
}
3.有参数有返回值的方法
public class TestDemo {
public static void main(String[] args) {
int result = add(10, 20);
System.out.println(result);
//既然方法有返回值,那么这些返回值也可以直接输出
System.out.println(add(100, 200));
}
public static int add(int x, int y) { //定义方法
return x + y;
}
}
方法包含成员方法和静态方法两种
-
成员方法:成员方法是在类中定义的,成员方法是创建对象以后才分配内存,每个对象都各有一份。通过对象名进行访问。
成员方法(Instance Methods)
- 定义:没有使用
static
关键字声明的方法。 - 调用:必须通过类的对象实例调用。
- 作用:用于操作对象的状态,即对象的属性和行为。
- 特点:
- 可以直接访问类的成员变量和其它成员方法。
- 与对象的状态紧密相关,每个对象实例都可以有自己的方法实现。
- 在创建对象实例时可用,与对象的生命周期相关。
- 定义:没有使用
-
静态方法:静态方法是在类中定义的,在创建对象前分配内存,所有对象共用一份,通过类名进行访问。注意:在静态方法中是不能访问成员变量和成员方法。
静态方法(Static Methods)(使用前无需初始化)
- 定义:使用
static
关键字声明的方法。 - 调用:可以通过类名直接调用,而不需要创建类的实例。
- 作用:通常用于工具类,执行与类相关但不需要访问对象状态的操作。
- 特点:
- 不能直接访问非静态成员变量和非静态方法,除非它们也被声明为静态。
- 可以访问静态变量和静态方法,即使在没有类实例的情况下。
- 被设计为属于类本身,而不是类的任何特定对象。
- 在加载类时初始化,与类的生命周期相关。
代码实例:
public class Demo2 { public void mothod1(){ System.out.println("我是成员方法"); } static public void mothod2(){ System.out.println("我是静态方法"); } public static void main(String[] args) { Demo2 demo2 =new Demo2();//创建对象 demo2.mothod1();//访问成员方法 Demo2.mothod2();//访问静态方法 demo2.mothod2();//也可访问静态方法,但不推荐,因为静态方法并不属于某个对象 } }
- 定义:使用
方法的局部变量:
局部变量指在方法中声明的遍历,其作用范围仅限于方法中(局部变量在使用前必须进行初始化)