package com.initialization;
import static net.mindview.util.Print.*;
class Bowl {
Bowl(int marker) {
print("Bowl(" + marker +")");
}
void f1(int marker) {
print("f1(" + marker + ")");
}
}
class Table {
Bowl bowl11 = new Bowl(11);
static Bowl bowl1 = new Bowl(1);
Table() {
print("Table()");
bowl2.f1(1);
}
void f2(int marker) {
print("f2(" + marker + ")");
}
static void test() { System.out.println("test()"); };
static Bowl bowl2 = new Bowl(2);
}
class Cupboard {
Bowl bowl3 = new Bowl(3);
static Bowl bow4 = new Bowl(4);
Cupboard() {
print("Cupboard()");
bowl4.f1(2);
}
void f3(int marker) {
print("f3(" + marker + ")");
}
static Bowl bowl4 = new Bowl(5);
}
class MyTable extends Table {
static Bowl bowl22 = new Bowl(22);
Bowl bowl33 = new Bowl(33);
MyTable() {
print("MyTable()");
}
}
public class StaticInitialization {
public static void main(String[] args) {
new MyTable();
// Table table2 = new Table();
// System.out.println(Table.bowl1);
// Table.test();
// System.out.println(Cupboard.bowl4);
/*print("Creating new Cupboard() in main");
new Cupboard();
print("Creating new Cupboard() in mian");
new Cupboard();*/
// table.f2(1);
// cupboard.f3(1);
}
// static Table table = new Table();
// static Cupboard cupboard = new Cupboard();
}
输出
Bowl(1)
Bowl(2)
Bowl(22)
Bowl(11)
Table()
f1(1)
Bowl(33)
MyTable()