【问题标题】:Why does "initializing Test Class" doesn't get print? [duplicate]为什么“初始化测试类”没有打印出来? [复制]
【发布时间】:2021-07-25 01:56:32
【问题描述】:

有人能解释一下为什么 TestClass 构造函数不会被调用吗? 如果我创建另一个类但不使用包含 main 方法的类,它会起作用吗?

public class TestClass {

    public void TestClass(){
        System.out.println("initializing Test Class");
    }


    public static void main(String[] args) {
        TestClass testClass  = new TestClass();

    }

}

【问题讨论】:

  • @Java_Learner 如果您对答案感到满意,请接受它,以便将来对其他 Java 学习者有所帮助。谢谢。

标签: java mainclass


【解决方案1】:

您在TestClass 类中创建的不是没有参数的构造函数,而只是与您的类同名的方法。这在 Java 中是允许的,事实上,您可以通过添加返回类型 void 来发现这一点。
在您的情况下,当您在 main 方法中实例化类时,您实际上是在调用编译器自动添加的“默认”构造函数。
如果你想看到你的行被打印出来,你必须删除“void”子句,这样才能有一个没有参数的正确构造函数。它应该是这样的:

public class TestClass {

    public TestClass(){
        System.out.println("initializing Test Class");
    }


    public static void main(String[] args) {
        TestClass testClass  = new TestClass();

    }

}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-07-19
    • 2021-06-17
    • 1970-01-01
    • 2015-02-20
    • 2012-07-28
    • 1970-01-01
    • 2022-08-17
    相关资源
    最近更新 更多