gpt4 book ai didi

Java awt 复选框构造函数

转载 作者:行者123 更新时间:2023-12-02 04:26:47 25 4
gpt4 key购买 nike

当我仔细阅读“Java 完整引用第 9 章”时,当我读到第 840 页时,我注意到一些有趣的事情。 Checkbox 类支持以下两个构造函数:

Checkbox(String str, boolean on, CheckboxGroup cbGroup) 抛出 HeadlessException Checkbox(String str, CheckboxGroup cbGroup, boolean on) 抛出 HeadlessException

这些背后的代码如下所示:

public Checkbox(String label, boolean state, CheckboxGroup group)
throws HeadlessException {
...code...
}

public Checkbox(String label, CheckboxGroup group, boolean state)
throws HeadlessException {
this(label, state, group);
}

正如你所看到的,第一个被第二个调用。两者似乎做了完全相同的事情,至少这是我所看到的。为什么需要第二个?

最佳答案

JDK 1.0引入了三个构造函数:

public Checkbox()
public Checkbox(String label)
public Checkbox(String label, CheckboxGroup group, boolean state)

JDK 1.1 希望添加一个不同的构造函数来设置标签和状态:

public Checkbox(String label, boolean state)

现在,在多态函数中使用相同顺序的参数是一个很好的做法。最好使用 Checkbox(String label, boolean state, CheckboxGroup group),而不是构造函数 Checkbox(String label, CheckboxGroup group, boolean state)。由于无法删除第一个变体(已在 JDK 1.0 中发布),因此简单地添加了第二个更连贯的变体。

关于Java awt 复选框构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32054164/

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