父类静态成员全局共享
父类中,static修饰的静态成员变量以及静态成员方法由全局共享
class A{
//父类中的静态成员可以看作是一个全局共享的
public static int a = 10;
public static void fun(){
System.out.println("hello");
}
}
class B extends A{
}
}
public class ExtendsQuestion {
public static void main(String[] args) {
B b = new B();
System.out.println(b.a);//10 (父类成员变量全局共享)
b.fun();//hello (父类成员方法全局共享)
}
}
class A{
//父类中的静态成员可以看作是一个全局共享的
public static int a = 10;
public static void fun(){
System.out.println("hello");
}
}
class B extends A{
public void fun2(){
a = 200;
System.out.println(a);
}
}
public class ExtendsQuestion {
public static void main(String[] args) {
B b = new B();
System.out.println(b.a);//10 (先初始化父类成员变量)
b.fun();//hello (先初始化父类成员方法)
b.fun2();//200 (子类的成员方法)
System.out.println(b.a);//200 (子类成员变量)
}
}
class A{
//父类中的静态成员可以看作是一个全局共享的
public static int a = 10;
public static void fun(){
System.out.println("hello");
}
}
class B extends A{
public void fun2(){
a = 200;
System.out.println(a);
}
public static void fun(){
System.out.println("world");
}
}
public class ExtendsQuestion {
public static void main(String[] args) {
B b = new B();
System.out.println(b.a);//10
b.fun();//world (子类静态成员方法属于本类,static修饰的成员与父类没有继承关系)
b.fun2();//200
System.out.println(b.a);//200
}
}