// 别自乱阵脚:任何一个方法体当中的代码都是遵循自上而下的顺序依次逐行执行的。
// 自上而下的顺序
/*
推测执行结果:
main begin
m1 begin
m2 begin
m3 begin
T's m3 method execute!
m3 over
m2 over
m1 over
main over
main方法最先执行,并且main方法是最后一个结束。
main结束,整个程序就结束了。
对于当前的程序来说:
*main方法最先被调用,main也是最后一个结束
*最后调用的方法m3方法,该方法最先结束。
main方法结束后,整个程序就结束了。【这句话只适合当前所讲内容】
不用可以去记忆:
只要记住方法中的代码是自上而下的顺序依次执行即可。
当前行的程序没有结束的时候,下一行代码无法执行的
*/
public class MethodTest05{
public static void main(String[] args){
System.out.println("main begin");
// 调用m1方法
m1();
System.out.println("main over");
}
public static void m1(){
System.out.println("m1 begin");
// 调用程序不一定写到main方法中,不要把main方法特殊化。
// main方法也是一个普通方法。
//完整调用
MethodTest05 m2();
//被调用的方法和本类中调用方法在同一个类中可以省略“类名.“
m2();
System.out.println("m1 over");
}
// m2方法可以调用T类的m3()方法吗?
public static void m2(){
System.out.println("m2 begin");
//调用其他类【不是本类中的】的方法
T.m3();
//省略‘类名.’试试
//编译报错,‘类名.’省略后,默认从当前的类中找‘m3’方法,当前类中该方法不存在
//m3();
System.out.println("m2 over");
}
}
class T{
public static void m3(){
System.out.println("m3 begin");
System.out.println("T's m3 method execute!");
System.out.println("m3 over");
}
}