62,614
社区成员
发帖
与我相关
我的任务
分享
public class Jiazaishunxu {
public static void main(String[] args){
System.out.println(Zi.a);
}
}
class Fu{
static int a=1;
int b=2;
static{
System.out.println("父类静态代码块:"+a);
}
}
class Zi extends Fu{
static{
System.out.println("子类静态代码块:"+a);
}
}
public class Jiazaishunxu {
public static void main(String[] args){
System.out.println(Zi.a);
}
}
class Fu{
static int a=1;
int b=2;
static{
System.out.println("父类静态代码块:"+a);
}
}
class Zi extends Fu{
static int a=3;
static{
System.out.println("子类静态代码块:"+a);
}
}
package test;
//为什么子类的静态代码块有时候不加载
public class Jiazaishunxu {
public static void main(String[] args){
// Zi.fun0();
// System.out.println("***********");
// Fu.fun0();
// System.out.println("***********");
// System.out.println(Zi.a);
// System.out.println("***********");
// System.out.println(Fu.a);
// System.out.println("***********");
// new Zi();
System.out.println(Fu.a);
System.out.println("***********");
System.out.println(Zi.a);
System.out.println("***********");
Fu.fun0();
System.out.println("***********");
Zi.fun0();
System.out.println("***********");
new Zi().fun();
}
}
class Fu{
static int a=1;
int b=2;
static{
System.out.println("父类静态代码块:"+a);
}
static void fun0(){
System.out.println("父类静态方法");
}
void fun(){
System.out.println("父类方法:"+a);
}
Fu(){
System.out.println("b:"+b);
}
}
class Zi extends Fu{
// static int a;
static{
int b=0;
System.out.println("子类静态代码块:"+a);
System.out.println("子类静态代码块:"+b);
}
static void fun0(){
}
static{
System.out.println("子类静态代码块2:");
}
void fun(){
System.out.println("子类方法:"+a);
}
}
执行结果:
父类静态代码块:1
1
***********
1
***********
父类静态方法
***********
子类静态代码块:1
子类静态代码块:0
子类静态代码块2:
***********
b:2
子类方法:1