1.成员方法的分类
①类方法:有static修饰的成员方法,属于类
②实例方法:无static修饰的成员方法,属于对象。
2.成员方法的执行原理
解析:
第一行代码:扫描class包名,在方法区生成一个Test.class空间。
第二行代码:扫描main方法,在栈中生成main空间
第三行代码:首先扫描到Student然后会在方法区创建一个Student.class看空间,然后扫描到printHelloworld方法,然后在Student.class空间找到printHelloworld方法。
第四行代码:发现new先在栈内存中的main空间中生成一个Student s空间,然后在堆内存中生成一个s空间,里面有成员变量,然后将地址值给栈中Student s空间。
第五行代码:先是s,找到栈中的Student s空间,然后根据他的地址值找到对中的s空间,然后在通过s空间找到Student.class,然后找到printHelloworld方法。
第六行代码:先是s,找到栈中的Student s空间,然后根据他的地址值找到对中的s空间,然后在通过s空间找到Student.class,然后找到printPass方法,然后printPass方法在去找到成员变量score。