java - 当main方法中没有创建类的实例时,会调用默认构造函数吗?
问题描述
当main方法中没有创建类的实例时,会调用默认构造函数吗?
前任:
class A{
public static void main(String args[]){
System.out.print("Hello")
}
}
在这种情况下,会调用 A 的默认构造函数吗?
解决方案
创建对象时调用构造函数。Main 方法是静态的,因此不需要创建 A 类的对象,因此不会调用构造函数。
以下是调用默认构造函数的情况,因为您创建了 A 类的实例。我创建了自己的构造函数,只是为了知道它里面的文本是否被打印,这就是它被调用的证明
public class A {
public static void main(String[] args) {
A a = new A();
a.print();
}
public A()
{
System.out.println("Constructor invoked");
}
private void print()
{
System.out.println("Text printed");
}
}
输出:
Constructor invoked
Text printed
推荐阅读
- google-app-engine - GAE 和 CloudSQL 计费时间
- python - 批处理文件逻辑失败
- python - PySide 如何在拖放时保持 QLabel 可见?
- mysql - 当heroku让我的应用程序进入睡眠状态时,如何防止ClearDB(MySQL)掉线
- python - 快速过滤大量类似 numpy 的数组
- reactjs - 用 materialize.ui 反应 js redux
- python - 如何打印列表的所有值?
- javascript - 查找数据属性和复选框子项
- python - AzureML 时间序列模型无法识别推理中的特征值
- java - 创建 Java 正则表达式模式以匹配 XML 中的字符串