1、调用外部类中的方法
main方法是静态方法,一般都是在main方法中调用外部类的静态方法或非静态方法,至于其他方式的调用并不常用
1.1、调用外部类的静态方法
1. 通过类名.静态方法
的方式调用(静态调用静态)
2. 也可以通过外部类的对象
的方式调用(静态调用静态)
public class Test01 {
public static void main(String[] args) {
A.print();
}
}
class A {
public static void print() {
System.out.println("我是A类的print方法");
}
}
1.2、调用外部类的非静态方法
通过外部类的对象
的方式调用(静态调用非静态)
public class Test02 {
public static void main(String[] args) {
A a = new A();
a.print();
}
}
class A {
public void print() {
System.out.println("我是A类的print方法");
}
}
2、调用本类中的方法
2.1、调用本类的静态方法
通过方法名
的方式直接调用(静态方法调用静态方法)
public class Test03 {
public static void main(String[] args) {
print1();
}
public static void print1() {
System.out.println("这是print方法1");
print2();
}
public static void print2() {
System.out.println("这是print方法2");
}
}
通过方法名
的方式直接调用(非静态方法调用静态方法)
public class Test04 {
public static void main(String[] args) {
}
public void print1() {
System.out.println("这是print方法2");
print2();
}
public static void print2() {
System.out.println("这是print方法1");
}
}
2.2、调用本类的非静态方法
通过对象
的方式调用(静态方法调用非静态方法)
public class Test05 {
public static void main(String[] args) {
Test04 test = new Test04();
test.print();
}
public void print() {
System.out.println("这是print方法");
}
}
通过方法名
的方式调用(非静态调用非静态)
public class Test06 {
public static void main(String[] args) {
}
public void print1() {
System.out.println("这是print方法2");
print2();
}
public void print2() {
System.out.println("这是print方法1");
}
}
3、总结
调用本类中的方法
- 静态 调用 静态 → 直接调用
- 静态 调用 非静态 → 通过对象
- 非静态 调用 静态 → 直接调用
- 非静态 调用 非静态 → 直接调用
调用外部类中的方法
- 静态 调用 静态 → 通过类名
- 静态 调用 非静态 → 通过对象
(会涉及到导包 和 继承等问题,需要注意)
物竞天择,适者生存,加油吧!!!