假设:
class Parent{
public Parent(){};
//静态的方法:被测试能否覆写
public static test(){
System.out.println("Parent的静态方法");
}
}
class Child extends Parent{
public Child(){};
//静态的方法:测试能否覆写其父类的静态方法
public static test(){
System.out.println(" Child的静态方法");
}
}
我所知道的:
1.static方法在JVM类加载时便存在,先与对象存在于内存中
2.当Child对象创建时会先创建Parent对象(而此时父类中的test()方法已经存在了)
2.1 这时接着创建Child对象前,(test()方法已存在)
疑问:
1.是否static方法在类加载分配空间时,当出现了相同的方法名,或者属性名,就只存储先出现的,后面的就不进行存储了?
2.还是,都存储了,只是因为多态的关系,当父类调用test()时,只会去调用其类中的?