- Java code
class Cup{ Cup(int marker){ System.out.println("cup("+ marker +")"); } void f(int marker){ System.out.println("f("+marker+")"); } }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()
谢谢
------解决方案--------------------
在你的Main方法中
System.out.println("Inside main()");
Cups.cup1.f(99); 这两句代码第一句直接输出Inside main(),第二句是调用f()方法,你要加一个new Cups()调用Cups构造方法才会显示你想要的Cups()。