gpt4 book ai didi

java - 如何使用数组列表的不同子类型重载构造函数?

转载 作者:行者123 更新时间:2023-12-01 07:22:22 25 4
gpt4 key购买 nike

我想使用单独的构造函数独立初始化几个不同的ArrayList。我可以轻松地使用类实现我需要的内容除了默认值之外,只有一个辅助构造函数,但为了了解为什么它不起作用,我很欣赏一些见解。

public class MultiConstruct
{
ArrayList<Integer> first;
ArrayList<Float> second;

public MultiConstruct(){};

public MultiConstruct(ArrayList<Integer> f){
this();
this.first = f;
System.out.println("MultiConstruct version one handled successfully...");
System.out.println(" ");
}

public MultiConstruct(ArrayList<Float> s){
this();
this.second = s;
System.out.println("MultiConstruct version two handled successfully...");
System.out.println(" ");
}
}

最佳答案

您可以使用静态工厂方法而不是构造函数来解决此问题。

在 Joshua Bloch 的书“Effective Java” - 第 1 项中,他描述了使用静态工厂方法而不是构造函数的优点(和缺点),其中一个优点是静态工厂方法有名称,与构造函数不同。

关于java - 如何使用数组列表的不同子类型重载构造函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32663488/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com