gpt4 book ai didi

java - 实例变量的构造函数初始化

转载 作者:行者123 更新时间:2023-11-29 06:32:45 31 4
gpt4 key购买 nike

如果我有类似下面代码的构造函数,如果所有实例变量的名称都与参数名称相同,是否有一种简单、简写的方法可以在一行中完成所有实例变量的初始化?

private Quiz(int id, String name, int creatorId, Date timeCreated,
int categoryId, boolean randomOrder, boolean multiPage,
boolean immediateCorrection, boolean allowPractice) {
this.id = id;
this.name = name;
this.creatorId = creatorId;
this.timeCreated = timeCreated;
this.categoryId = categoryId;
this.randomOrder = randomOrder;
this.multiPage = multiPage;
this.immediateCorrection = immediateCorrection;
this.allowPractice = allowPractice;
}

最佳答案

不幸的是,没有更简单的方法来初始化实例变量——你必须在构造函数中编写这样的初始化代码。

但是所有现代IDE(如IntelliJ IDEA、Eclipse 等)都可以根据实例变量自动生成此类构造函数,因此您不必手动编写此类代码。 (比如在IntelliJ IDEA中按Alt+Insert,选择Constructor,选择你需要的变量,就会生成构造函数代码)。

此外,如果您有太多需要在构造函数中传递和初始化的变量(尤其是如果不是所有变量都是必需的)- 考虑使用 patter Builder(不幸的是,您将不得不编写更多代码!) .这是一个如何实现 Builder 的示例:http://www.javacodegeeks.com/2013/01/the-builder-pattern-in-practice.html

关于java - 实例变量的构造函数初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28735134/

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