1、如果在非静态方法里调用非静态方法,则可以用this调用。

如:this.Hao(String args[]) ,也可以省略this,直接调用Hao(String args[])。

 

2、如果在静态方法里调用静态方法,则可以直接使用“类名.方法名”调用。

如:若被调用的静态方法m1在类Hao1里,则调用方法是

1 //静态方法里调用静态方法,使用“类名.方法名”调用。
2 
3 public static void m()
4 {
5     Hao1.m1();
6 }

 

3、如果在静态方法里调用非静态方法,则必须先new一个对象,通过对象调用。

如:若被调用的非静态方法m2在类Hao2里,则调用方法是

1 //静态方法里调用非静态方法,先new一个对象,通过对象调用。
2 
3 public static void m()
4 {
5     Hao2 a=new Hao2();
6     a.m2();
7 
8     //new Hao2().m2();
9 }

 

注意:
1.静态变量在内存中只有一个拷贝,在类的所有实例中共享
2.静态方法不能直接访问非静态方法和非静态变量
3.非静态方法可以访问类的所有成员变量(包括静态成员变量和非静态成员变量)
4.静态方法和静态变量都可以通过类名直接被访问
5.静态方法中不能使用this,super关键字

 

相关文章:

  • 2021-10-31
  • 2022-01-12
  • 2022-12-23
  • 2021-09-15
  • 2021-11-15
  • 2022-01-06
  • 2022-12-23
  • 2021-08-20
猜你喜欢
  • 2021-08-16
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-02-09
  • 2021-10-21
相关资源
相似解决方案