class Cup{
Cup(int er){
System.out.println("cup("+ er +")");
}
void f(int er){
System.out.println("f("+er+")");
}
}class Cups{
static Cup cup1;
static Cup cup2;
static {
cup1 = new Cup(1);
cup2 = new Cup(2);
}
Cups() {
System.out.println("Cups()");
}
}
public class JingTai {
public static void main(String[] args){
System.out.println("Inside main()");
Cups.cup1.f(99);
}
}
输出结果为Inside main()
cup(1)
cup(2)
f(99)为什么没输出Cups()谢谢
Cup(int er){
System.out.println("cup("+ er +")");
}
void f(int er){
System.out.println("f("+er+")");
}
}class Cups{
static Cup cup1;
static Cup cup2;
static {
cup1 = new Cup(1);
cup2 = new Cup(2);
}
Cups() {
System.out.println("Cups()");
}
}
public class JingTai {
public static void main(String[] args){
System.out.println("Inside main()");
Cups.cup1.f(99);
}
}
输出结果为Inside main()
cup(1)
cup(2)
f(99)为什么没输出Cups()谢谢
这句话载入了类时会执行Cups的静态块,不会调用构造函数
cup2 = new Cup(2);楼主有在哪里创建Cups对象吗???
我没看到...
不知道楼下有没有人看到.
System.out.println("Inside main()");
Cups.cup1.f(99); 这两句代码第一句直接输出Inside main(),第二句是调用f()方法,你要加一个new Cups()调用Cups构造方法才会显示你想要的Cups()。
静态变量
静态初始化块
变量
初始化块
构造器