【发布时间】:2016-02-11 12:46:54
【问题描述】:
我对默认构造函数的实际可见性感到困惑。我在一本书中得到了以下代码,它解释了创建了一个默认构造函数,但实际上并没有显示一个(即 Employee()),尽管它是自动分配的:
public class Employee {
private String name;
private int zip;
private int age;
}
在另一本书中,有人告诉我以下是默认构造函数,因为它不带参数:
public class Pet {
private String name;
private int weight;
Pet(){}
}
如果我在物理上定义后一个构造函数,它实际上是默认的吗?还是因为与超类有关的某些事情,我的代码中的默认构造函数是否像第一个示例一样不可见?
编辑:我问的是写入类的物理代码。一个消息来源告诉我默认构造函数已明确写出,另一个消息来源告诉我它不会出现在代码中,并且基本上假定存在,尽管它对用户来说并不明显。我的问题是明确的问题来自 java 证书学习指南,所以这给我造成了一些困惑。
【问题讨论】: