我想知道使用构造函数而不是方法的确切场景,任何人都可以为java中的方法提供构造函数的确切示例程序
答案 0 :(得分:1)
它们甚至不是类似的东西。
两者都有完全不同的用途,甚至你必须注意构造函数不会返回任何东西,甚至无效:)
如果您看到basic tutorial on Constructor,则提及
构造函数声明看起来像方法声明 - 除了它们使用类的名称并且没有返回类型。
所以你不能选择一个。
如果您正在寻找/讨论设置实例成员的variables
,请选择setter方法而不是变量。
另一个场景是一些物体永远不会完整而没有提供一些基本信息。在这种情况下,您必须创建一个constructor
,就像在构造函数中传递必要的信息时应该构建它一样。
考虑下面的scenorio,在哪里创建一个员工类,他必须有一个员工ID
public class Employee {
String empId;
public Employee(String empId) {
this.empId = empId;
}
// Methods
public static void main(String[] args) {
Employee a = new Employee("green");
}
考虑下面的scenorio,在哪里创建一个空的员工类,以后他可以分配员工ID
public class Employee {
private String empId;
public Employee() {
}
// Methods
public void setEmpId(String empId) {
this.empId = empId;
}
public static void main(String[] args) {
Employee a = new Employee(); //No error
a.setEmpId("SOMEX007");
}
}