在同一个类中:
对于静态方法,其他的静态或非静态方法都可以直接调用它。
而对于非静态方法,其他的非静态方法是可以直接调用它的。但是其他静态方法只有通过对象才能调用它。
静态方法不能被非静态方法覆盖。
public class Test2 {
public static void s1(){
System.out.println("s1");
}
public void say1(){
System.out.println("say1");
}
public void say(){
s1();
say1(); //调用say1方法
}
public static void main(String [] args ) {
s1();
Test2 t = new Test2();
();
}
}
不同的类之间,无论调用方法是非静态还是静态,如果被调用的方法是:
静态方法,则通过类名与对象都可以调(但通过对象的方式不建议使用,因为它属于非静态调用的方式)
非静态方法,则只能通过对象才可以调用它
public class CallTest2 {
public static void s(){
System.out.println("s1");
}
public void say(){
Test2 t2 = new Test2();//调用Test里面的方法
();
t2.s1();
Test2.s1();
}
public static void main(String [] args ) {
CallTest2 t = new CallTest2();
();
}
}