package qinglin.com;
/**
* test static
* @author heqinglin8
* 实验顺序是:
* Men static 代码块
HuMen static 代码块
Men static 构造方法
HuMen static 构造方法
HuMen static 静态方法
结论: 静态代码块在加载类就运行,构造方法在创建类运行,静态方法在调用的时候运行,和对象本身没有关系
*/
public class StaticTest {
public static class Men{
static{
System.out.println("Men static 代码块");
}
public Men() {
System.out.println("Men static 构造方法");
}
public static void say(){
System.out.println("Men static 静态方法");
}
}
public static class HuMen extends Men{
static{
System.out.println("HuMen static 代码块");
}
public HuMen() {
System.out.println("HuMen static 构造方法");
}
public static void say(){
System.out.println("HuMen static 静态方法");
}
}
public static void main(String[] args) {
HuMen hmHuMen = new HuMen();
hmHuMen.say();
}
}
/**
* test static
* @author heqinglin8
* 实验顺序是:
* Men static 代码块
HuMen static 代码块
Men static 构造方法
HuMen static 构造方法
HuMen static 静态方法
结论: 静态代码块在加载类就运行,构造方法在创建类运行,静态方法在调用的时候运行,和对象本身没有关系
*/
public class StaticTest {
public static class Men{
static{
System.out.println("Men static 代码块");
}
public Men() {
System.out.println("Men static 构造方法");
}
public static void say(){
System.out.println("Men static 静态方法");
}
}
public static class HuMen extends Men{
static{
System.out.println("HuMen static 代码块");
}
public HuMen() {
System.out.println("HuMen static 构造方法");
}
public static void say(){
System.out.println("HuMen static 静态方法");
}
}
public static void main(String[] args) {
HuMen hmHuMen = new HuMen();
hmHuMen.say();
}
}