Tag: 不明确

静态方法访问非静态构造函数?

我昨天参加了Java考试。 有些东西对我来说似乎很模糊。 规则很简单: 静态方法不能不能调用非静态方法。 构造函数是一种没有返回类型的方法 。 public class Main { public static void main(String[] args) { Main p = new Main(); k(); } protected Main() { System.out.print(“1234”); } protected void k() { } } Main p = new Main() line prints 1234 k() line raises error 那为什么会这样呢? 它不与上面的Java规则冲突吗?